create-react-app: npm test dies with exception

Is this a bug report?

Yes

Can you also reproduce the problem with npm 4.x?

Yes.

Which terms did you search for in User Guide?

npm test

It is not the same as the problem described under npm test hangs on macOS Sierra.

Environment

  1. node -v: v7.9.0
  2. npm -v: 4.2.0
  3. yarn --version (if you use Yarn):
  4. npm ls react-scripts (if you haven’t ejected): └── react-scripts@1.0.11

Then, specify:

  1. Operating system: macOS Sierra 10.12.6
  2. Browser and version (if relevant): Not relevant

I do not have watchman installed.

Steps to Reproduce

  1. create-react-app foo
  2. cd foo
  3. npm test

Expected Behavior

I expect the tests to run.

Actual Behavior

Output is:

 RUNS  src/App.test.js
2017-08-25 10:01 node[90950] (FSEvents.framework) FSEventStreamStart: register_w
 RUNS  src/App.test.js
2017-08-25 10:01 node[90950] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
events.js:163
      throw er; // Unhandled 'error' event
      ^

Error: Error watching file for changes: EMFILE
    at exports._errnoException (util.js:1050:11)
    at FSEvent.FSWatcher._handle.onchange (fs.js:1376:11)
npm ERR! Test failed.  See above for more details.

Reproducible Demo

See above steps to reproduce.

Workaround

Downgrading to “react-scripts”: “1.0.10” fixes the problem.

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Reactions: 4
  • Comments: 15 (6 by maintainers)

Most upvoted comments

Was having same error on yarn test using:

node v8.9.0 yarn v0.20.3 MacOS Sierra 10.12.6

Same error after deleting /node_modules and re-installing using yarn install

Followed these instructions from readme to get yarn test working again:

watchman shutdown-server
brew update
brew reinstall watchman

I’m curious if this means that someone cloning my repo and trying to run tests will also need to have watchman installed?

Also having this problem. Was developing at work, tried to at home and it’s broken now.