Mocha compiler for es6 + react components with css require statements
| 'use strict'; | |
| var babel = require('babel-core'); | |
| var fs = require('fs'); | |
| // borrowed from https://github.com/babel/babel-jest/blob/master/index.js | |
| require.extensions['.jsx'] = function (module, filename) { | |
| var src = fs.readFileSync(filename, 'utf8'); | |
| // Allow the stage to be configured by an environment | |
| // variable, but use Babel's default stage (2) if | |
| // no environment variable is specified. | |
| var stage = process.env.BABEL_JEST_STAGE || 2; | |
| // Ignore all files within node_modules | |
| if (filename.indexOf('node_modules') === -1 && babel.canCompile(filename)) { | |
| var compiled = babel.transform(src, { filename: filename, stage: stage }).code; | |
| return module._compile(compiled, filename); | |
| } | |
| return module; | |
| }; | |
| require.extensions['.scss'] = function () { | |
| return null; | |
| }; | |
| require.extensions['.css'] = function () { | |
| return null; | |
| }; |
This comment has been minimized.
This comment has been minimized.
xseignard
commented
Dec 6, 2015
|
Nice, instead of embedding the babel compiler you could do something like this
function noop() { return null; }
require.extensions['.css'] = noop;
require.extensions['.md'] = noop;And run mocha like this:
|
This comment has been minimized.
This comment has been minimized.
adriancooney
commented
Jan 31, 2016
|
Thanks for this! |
This comment has been minimized.
This comment has been minimized.
aweber1
commented
Feb 2, 2016
|
Thanks for sharing this! |
This comment has been minimized.
This comment has been minimized.
ramirotw
commented
Feb 2, 2016
|
|
This comment has been minimized.
This comment has been minimized.
hammeiam
commented
Feb 21, 2016
|
@xseignard this is a great solution! I changed your answer from css to less to suit my purposes and interestingly, I kept getting |
This comment has been minimized.
This comment has been minimized.
AlastairTaft
commented
Jul 11, 2016
|
Brilliant! Thanks |
This comment has been minimized.
This comment has been minimized.
manuelro
commented
Apr 18, 2017
|
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This comment has been minimized.
daviferreira commentedApr 25, 2015
mocha --reporter spec --compilers jsx:client/test/compiler.js ./client/components/**/*test.jsx