{"action":"opened","issue":{"url":"https://api.github.com/repos/anticoders/gagarin/issues/145","labels_url":"https://api.github.com/repos/anticoders/gagarin/issues/145/labels{/name}","comments_url":"https://api.github.com/repos/anticoders/gagarin/issues/145/comments","events_url":"https://api.github.com/repos/anticoders/gagarin/issues/145/events","html_url":"https://github.com/anticoders/gagarin/issues/145","id":121751436,"number":145,"title":"\"before all\" / \"after all\" hook errors in package only app","user":{"login":"awatson1978","id":675910,"avatar_url":"https://avatars.githubusercontent.com/u/675910?v=3","gravatar_id":"","url":"https://api.github.com/users/awatson1978","html_url":"https://github.com/awatson1978","followers_url":"https://api.github.com/users/awatson1978/followers","following_url":"https://api.github.com/users/awatson1978/following{/other_user}","gists_url":"https://api.github.com/users/awatson1978/gists{/gist_id}","starred_url":"https://api.github.com/users/awatson1978/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/awatson1978/subscriptions","organizations_url":"https://api.github.com/users/awatson1978/orgs","repos_url":"https://api.github.com/users/awatson1978/repos","events_url":"https://api.github.com/users/awatson1978/events{/privacy}","received_events_url":"https://api.github.com/users/awatson1978/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-12-11T17:05:37Z","updated_at":"2015-12-11T17:05:37Z","closed_at":null,"body":"Hi there,\r\nSo, everything has been working swimmingly with Gagarin so far, and I'm happy to report that we've got StarryNight and Atom integration working already.  \r\n\r\nMoving onto package-only apps, I have a [package-only app](https://github.com/clinical-meteor/framework-doc-generator/tree/master/musicbox) for generating [release api documentation](http://clinical-docs.meteor.com/), and would like to be able to use the glob patterns to run the integration tests from the packages.  \r\n\r\n```bash\r\ngagarin --webdriver http://localhost:9515 ./packages/*/tests/gagarin/*.js\r\n```\r\n\r\nThe Gagarin syntax appears to be the perfect abstraction for running these kinds of tests.  Unfortunately, I'm getting some \"before all\" and \"after all\" hook errors, along with some errors about genericPromiseChain and browserManager.  \r\n\r\n```bash\r\nAbigails-Mac-mini:musicbox abigailwatson$ gagarin --webdriver http://localhost:9515 ./packages/*/tests/gagarin/*.js\r\n{ [Error: Cannot find module '../build/Release/bson'] code: 'MODULE_NOT_FOUND' }\r\njs-bson: Failed to load c++ bson extension, using pure JS version\r\n\r\n  added 1 test files ...\r\n\r\n\r\n  --- building app => /Users/abigailwatson/Code/ClinicalFramework/framework-doc-generator/musicbox ---\r\n\r\n\r\n  done building ...\r\n\r\n\r\n\r\n  Env\r\n    1) \"before all\" hook\r\n    2) \"after all\" hook\r\n\r\n\r\n  0 passing (5s)\r\n  2 failing\r\n\r\n  1) Env \"before all\" hook:\r\n     Error: Internal server error [500]\r\n    at /usr/local/lib/node_modules/gagarin/lib/tools/genericPromiseChain.js:233:13\r\n    at /usr/local/lib/node_modules/gagarin/lib/tools/genericPromiseChain.js:189:40\r\n    at /usr/local/lib/node_modules/gagarin/lib/tools/index.js:165:25\r\n    at /usr/local/lib/node_modules/gagarin/lib/meteor/methods.js:99:14\r\n    at [object Object].DDPClient._message (/usr/local/lib/node_modules/gagarin/node_modules/ddp/lib/ddp-client.js:144:7)\r\n    at [object Object].<anonymous> (/usr/local/lib/node_modules/gagarin/node_modules/ddp/lib/ddp-client.js:84:10)\r\n    at emitOne (events.js:77:13)\r\n    at [object Object].emit (events.js:169:7)\r\n    at [object Object].EventTarget.dispatchEvent (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/lib/faye/websocket/api/event_target.js:24:10)\r\n    at [object Object].instance._receiveMessage (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/lib/faye/websocket/api.js:123:10)\r\n    at [object Object].<anonymous> (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/lib/faye/websocket/api.js:41:49)\r\n    at emitOne (events.js:82:20)\r\n    at [object Object].emit (events.js:169:7)\r\n    at [object Object].<anonymous> (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/node_modules/websocket-driver/lib/websocket/driver/hybi.js:450:14)\r\n    at pipe (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/node_modules/websocket-driver/node_modules/websocket-extensions/lib/pipeline/index.js:37:40)\r\n    at [object Object].Pipeline._loop (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/node_modules/websocket-driver/node_modules/websocket-extensions/lib/pipeline/index.js:44:3)\r\n    at [object Object].Pipeline.processIncomingMessage (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/node_modules/websocket-driver/node_modules/websocket-extensions/lib/pipeline/index.js:13:8)\r\n    at [object Object].instance.processIncomingMessage (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/node_modules/websocket-driver/node_modules/websocket-extensions/lib/websocket_extensions.js:133:20)\r\n    at [object Object].instance._emitMessage (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/node_modules/websocket-driver/lib/websocket/driver/hybi.js:441:22)\r\n    at [object Object].instance._emitFrame (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/node_modules/websocket-driver/lib/websocket/driver/hybi.js:404:19)\r\n    at [object Object].instance.parse (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/node_modules/websocket-driver/lib/websocket/driver/hybi.js:141:18)\r\n    at [object Object].instance.parse (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/node_modules/websocket-driver/lib/websocket/driver/client.js:62:58)\r\n    at [object Object].IO.write (/usr/local/lib/node_modules/gagarin/node_modules/ddp/node_modules/faye-websocket/node_modules/websocket-driver/lib/websocket/streams.js:80:16)\r\n    at Socket.ondata (_stream_readable.js:525:20)\r\n    at emitOne (events.js:77:13)\r\n    at Socket.emit (events.js:169:7)\r\n    at readableAddChunk (_stream_readable.js:146:16)\r\n    at Socket.Readable.push (_stream_readable.js:110:10)\r\n    at TCP.onread (net.js:523:20)\r\n  \r\n\r\n  2) Env \"after all\" hook:\r\n     Error: Meteor code is still not loaded after 2000 ms\r\n    at [object Object]._onTimeout (/usr/local/lib/node_modules/gagarin/lib/browser/browserManager.js:141:16)\r\n    at Timer.listOnTimeout (timers.js:89:15)\r\n```\r\n\r\nAre there any config files or global helper files that need to be specified?  How do we specify before all and after all hooks?  Thanks!"}}