mocha command giving ReferenceError: window is not defined

jit picture jit · Dec 3, 2015 · Viewed 22k times · Source

I am using command:

mocha --compilers :./test/babel-setup.js --recursive --watch

It is giving error:

ReferenceError: window is not defined

I have the following in my babel-setup.js:

require("babel/register")({
  compact: false
});

I am using node 0.12.7 and "mocha": "^2.2.5" and "jsdom": "^3.1.2".

I already have jsdom installed with the project.

What is causing the error?

Answer

emmby picture emmby · Jul 22, 2016

I was able to use jsdom-global to fix this issue. Follow the instructions in that link to install. Specifically, run

npm install --save-dev --save-exact jsdom jsdom-global

then add -r jsdom-global/register to your mocha command-line. When you re-run your tests, the window is not defined error will go away.