I am using command:
mocha --compilers :./test/babel-setup.js --recursive --watch
It is giving error:
ReferenceError: window
To test frontend libraries with mocha you need the node modul mocha-jsdom you find it here: https://www.npmjs.com/package/mocha-jsdom
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.
Since I was doing too much with the window object, I just used this code to determine if I was in mocha or not.
function isMocha(){
let context = (global || window);
return ['afterEach','after','beforeEach','before','describe','it'].every(function(functionName){
return context[functionName] instanceof Function;
});
}