support specifying file or folder when running tests
This commit is contained in:
parent
ec6fc4d967
commit
263fdb6d8b
|
@ -136,14 +136,13 @@ class Cmd {
|
|||
|
||||
test() {
|
||||
program
|
||||
.command('test')
|
||||
.command('test [file]')
|
||||
.description('run tests')
|
||||
.action(function () {
|
||||
.action(function (file) {
|
||||
embark.initConfig('development', {
|
||||
embarkConfig: 'embark.json', interceptLogs: false
|
||||
});
|
||||
embark.runTests();
|
||||
//shelljs.exec('mocha test');
|
||||
embark.runTests(file);
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -1,24 +1,41 @@
|
|||
|
||||
module.exports = {
|
||||
run: function() {
|
||||
run: function(filepath) {
|
||||
var Mocha = require('mocha'),
|
||||
fs = require('fs'),
|
||||
path = require('path');
|
||||
|
||||
var mocha = new Mocha();
|
||||
|
||||
var testDir = 'test/';
|
||||
if (filepath) {
|
||||
if (filepath.substr(-1) === '/') {
|
||||
// Add each .js file to the mocha instance
|
||||
fs.readdirSync(filepath).filter(function(file){
|
||||
// Only keep the .js files
|
||||
// TODO: make this a configuration in embark.json
|
||||
return file.substr(-3) === '.js';
|
||||
}).forEach(function(file){
|
||||
mocha.addFile(
|
||||
path.join(filepath, file)
|
||||
);
|
||||
});
|
||||
} else {
|
||||
mocha.addFile(filepath);
|
||||
}
|
||||
} else {
|
||||
var testDir = 'test/';
|
||||
|
||||
// Add each .js file to the mocha instance
|
||||
fs.readdirSync(testDir).filter(function(file){
|
||||
// Only keep the .js files
|
||||
// TODO: make this a configuration in embark.json
|
||||
return file.substr(-3) === '.js';
|
||||
}).forEach(function(file){
|
||||
mocha.addFile(
|
||||
path.join(testDir, file)
|
||||
);
|
||||
});
|
||||
// Add each .js file to the mocha instance
|
||||
fs.readdirSync(testDir).filter(function(file){
|
||||
// Only keep the .js files
|
||||
// TODO: make this a configuration in embark.json
|
||||
return file.substr(-3) === '.js';
|
||||
}).forEach(function(file){
|
||||
mocha.addFile(
|
||||
path.join(testDir, file)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
let Test = require('./test.js');
|
||||
|
||||
|
|
|
@ -195,9 +195,9 @@ class Embark {
|
|||
}
|
||||
}
|
||||
|
||||
runTests() {
|
||||
runTests(file) {
|
||||
let RunTests = require('./core/run_tests.js');
|
||||
RunTests.run();
|
||||
RunTests.run(file);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue