Closed
Description
In our project we store all test file under test folder near each module instead of /root/test. Also we are using mongoose client for mongodb. So all mongoose models are loaded in server.js/index.js where server is started, so it doesn't make sense to user require_helper in production code.
So we needed a way to tell require to use instrumented file instead on source file without using requireHelper, So we used require.extension. Here is sample code for our requireHelper.js
if (process.env.APP_DIR_FOR_CODE_COVERAGE) {
var extname = '.js',
ext_super = require.extensions[extname],
filePatternMatch = /\/app\/(?!.*\/test\/)(?!.*_spec\.).*\.(js$)/;
require.extensions[extname] = function ext(module, filename) {
filename = filename.match(filePatternMatch) ? filename.replace('/app/', process.env.APP_DIR_FOR_CODE_COVERAGE) : filename;
return ext_super(module, filename);
};
}
Metadata
Metadata
Assignees
Labels
No labels