Cannot resolve path in Mocha

I am currently using Nitrous, which shouldn't matter, but I needed to install mocha so I typed in:

npm install - g mocha.

Everything installed and when I try to run mocha in my command line I get the following error:

/home/action/.parts/lib/node_modules/mocha/bin/_mocha:454 if (!files.length) throw new Error("cannot resolve path (or pattern) '"

Error: cannot resolve path (or pattern) 'test/unit' at lookupFiles (/home/action/.parts/lib/node_modules/mocha/bin/_mocha:454:32) at runAgain (/home/action/.parts/lib/node_modules/mocha/bin/_mocha:305:24) at Array.forEach (native) at Object. (/home/action/.parts/lib/node_modules/mocha/bin/_mocha:304:6) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Function.Module.runMain (module.js:497:10) at startup (node.js:119:16) at node.js:902:3

Does anyone know how to solve this?

Answers


By default, mocha includes ./test/*.js. So if that is where your tests live, just running mocha is all you need.

If you have your tests in test/unit, you might want to run mocha ./test/unit/*.js.


The error you are getting is consistent with not having a file named test/unit and doing this:

$ mocha test/unit

Check that the file exists. (Actually, without a .js extension, I'd expect a directory rather than a file.) Check that you are in the right location when you issue your command.


For anyone who gets this error when trying to run:

> npm test 

Make sure that your package.json file includes a test script in the format of:

<project-root>/<custom-path-to-test>/*.js

For example:

{
  "name": "Project Name",
   ...
  "scripts": {
    "test": "mocha ./node/test/*.js"
  }
   ...
}

For those having mocha installed and have makefile like this:

test:
    @./node_modules/.bin/mocha -u tdd
.PHONY: test

but getting this error:

Error: cannot resolve path (or pattern) 'test'

you need to add folder "test" in the project folder. And your test files in that test folder

E.G.
 /home/you/nodejs/chapter3
  ├── lib
  ├── makefile
  ├── node_modules
  ├── package.json
  └── test
       ├── db.test.js


npm install -g mocha
npm install mocha --save-dev  

write your test : test.js add below script in your package json file

"scripts": {
    "api:test": "node_modules/.bin/mocha --timeout 10000 --recursive test/"
},

go to your test directory : npm run api:test

https://github.com/shahing/Mocha-RestAPI-Tests


Just move all the tests to the test folder, If you dont have create one.

and in the package.json file just enter 'mocha'

"scripts":{
    "test": "mocha"
  },

and run

npm test

in the terminal.


If you run npm test it will execute the *.js files only in test directory not in sub directories.

If you also want to execute the *.js test files inside sub directories of test folder.

Follow the following steps :

  1. Create a mocha.opts file in test directory
  2. Add following line in mocha.opts file --recursive

Need Your Help

How to set a background image in html/ASP.net that will work even when the site is moved?

asp.net html visual-web-developer-2010

I'm trying to set an image as a background image. From what I've read – I need to have a tilde (~) before the address or the site won't function if put inside a folder. But though that works when I...