Add script to run specs in CI, fixes #61.

This commit is contained in:
Cheng Zhao 2013-08-21 11:15:22 +08:00
parent 0cd3f3cc40
commit d160da7752
4 changed files with 47 additions and 2 deletions

View file

@ -15,6 +15,21 @@
require('coffee-script'); // Supports .coffee tests.
// Rediret all output to browser.
var ipc = require('ipc');
global.__defineGetter__('console', function() {
return {
log: function() {
args = Array.prototype.slice.call(arguments);
ipc.sendChannel('console.log', args);
},
error: function() {
args = Array.prototype.slice.call(arguments);
ipc.sendChannel('console.error', args);
},
}
});
var Mocha = require('mocha');
var mocha = new Mocha();
@ -24,6 +39,14 @@
if (query.grep) mocha.grep(query.grep);
if (query.invert) mocha.invert();
// Check if we are running in CI.
var argv = require('remote').process.argv;
var isCi = false;
if (argv[1] == '--ci') {
isCi = true;
mocha.reporter('tap');
}
// Read all test files.
var walker = require('walkdir').walk(__dirname);
@ -33,8 +56,10 @@
});
walker.on('end', function() {
mocha.run(function() {
var runner = mocha.run(function() {
Mocha.utils.highlightTags('code');
if (isCi)
ipc.sendChannel('process.exit', runner.failures);
});
});
})();