Reputation: 311
I am trying to follow a first example from https://mochajs.org/
Done this
$ npm install -g mocha
Got
C:\Windows\system32>npm install -g mocha
npm WARN deprecated [email protected]: Jade has been renamed to pug, please install th
e latest version of pug instead of jade
npm WARN deprecated [email protected]: graceful-fs version 3 and before will fai
l on newer node releases. Please update to graceful-fs@^4.0.0 as soon as possibl
e.
C:\Users\TestUser\AppData\Roaming\npm\_mocha -> C:\Users\TestUser\AppData\Roamin
g\npm\node_modules\mocha\bin\_mocha
C:\Users\TestUser\AppData\Roaming\npm\mocha -> C:\Users\TestUser\AppData\Roaming
\npm\node_modules\mocha\bin\mocha
[email protected] C:\Users\TestUser\AppData\Roaming\npm\node_modules\mocha
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected])
Also installed chai (sorry, I originally forgot to mention it)
C:\Windows\system32>npm install -g chai
[email protected] C:\Users\TestUser\AppData\Roaming\npm\node_modules\chai
├── [email protected]
├── [email protected]
└── [email protected] ([email protected])
And here is the code
var assert = require('chai').assert;
describe('Array', function() {
describe('#indexOf()', function () {
it('should return -1 when the value is not present', function () {
assert.equal(-1, [1,2,3].indexOf(5));
assert.equal(-1, [1,2,3].indexOf(0));
});
});
});
Keep getting
Error: Cannot find module 'chai'
at Function.Module._resolveFilename (module.js:325:15)
at Function.Module._load (module.js:276:25)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (c:\git\develop\SendText\test\test2.js:1:76)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
What am I doing wrong?
Upvotes: 27
Views: 47170
Reputation: 71
You need to be sure that both installations are on the same folder because if the node_modules folder (created during mocha installation) is not on the same folder where you are installing chi, then the error: Cannot find module 'chai' appears.
npm install --global mocha
npm install chi
npm test (the tests were executed successfully)
Upvotes: 0
Reputation: 11
$ npm install chai
[email protected] ../../../../../../node_modules/chai
├── [email protected]
├── [email protected]
└── [email protected] ([email protected])
-MacBook-Air:test $ mocha
Array
#indexOf()
✓ should return -1 when the value is not present
1 passing (9ms)
Upvotes: 1
Reputation: 7203
You have installed chai
globally (with -g
option), that's why require
don't find it.
You need to install it locally (on your node_modules
directory), so that require
can find it.
To do so, type:
npm install --save-dev chai
Upvotes: 68
Reputation: 116
You need to install chai
locally to require it.
npm install chai
Upvotes: 4