Closed
Description
I originally reported this on the electron issue tracker and also created a stack overflow post for this, but I thought this might be more a better-sqlite3
issue, so I'm creating the issue here as well.
I'm using the vue-electron boilerplate with the better-sqlite3
library, however whenever I try to run unit tests using yarn test
(which calls npm
) I get the following error:
08 12 2017 23:45:19.463:INFO [karma]: Karma v1.7.1 server started at http://0.0.0.0:9876/
08 12 2017 23:45:19.465:INFO [launcher]: Launching browser visibleElectron with unlimited concurrency
08 12 2017 23:45:19.530:INFO [launcher]: Starting browser Electron
08 12 2017 23:45:20.577:INFO [Electron 1.7.9 (Node 7.9.0)]: Connected on socket pezqFj1bsIJV52JrAAAA with id 7899584
Electron 1.7.9 (Node 7.9.0) ERROR
Uncaught Error: Could not locate the bindings file. Tried:
→ /home/cassius/workspace/tagister/node_modules/better-sqlite3/build/better_sqlite3.node
→ /home/cassius/workspace/tagister/node_modules/better-sqlite3/build/Debug/better_sqlite3.node
→ /home/cassius/workspace/tagister/node_modules/better-sqlite3/build/Release/better_sqlite3.node
→ /home/cassius/workspace/tagister/node_modules/better-sqlite3/out/Debug/better_sqlite3.node
→ /home/cassius/workspace/tagister/node_modules/better-sqlite3/Debug/better_sqlite3.node
→ /home/cassius/workspace/tagister/node_modules/better-sqlite3/out/Release/better_sqlite3.node
→ /home/cassius/workspace/tagister/node_modules/better-sqlite3/Release/better_sqlite3.node
→ /home/cassius/workspace/tagister/node_modules/better-sqlite3/build/default/better_sqlite3.node
→ /home/cassius/workspace/tagister/node_modules/better-sqlite3/compiled/7.9.0/linux/x64/better_sqlite3.node
at webpack:///node_modules/bindings/bindings.js:96:0 <- index.js:30116
Even though the bindings do exist:
find $HOME/workspace/tagister/node_modules/better-sqlite3/ -name "*node"
/home/cassius/workspace/tagister/node_modules/better-sqlite3/build/Release/test_extension.node
/home/cassius/workspace/tagister/node_modules/better-sqlite3/build/Release/better_sqlite3.node
/home/cassius/workspace/tagister/node_modules/better-sqlite3/build/Release/obj.target/test_extension.node
/home/cassius/workspace/tagister/node_modules/better-sqlite3/build/Release/obj.target/better_sqlite3.node
I know to get better-sqlite3
to work in development mode, I had to add "postinstall": "electron-builder install-app-deps"
to the scripts
section of my package.json
. Is there anything I need to do specifically to make this package available in the tests or is this some kind of electron bug?
Reproduce
git clone https://gitlab.com/djsumdog/tagster.git
git checkout ca712c4c
yarn
yarn test