Command line mjsunit runner which provides an easy way to hook into mjsunit and start running tests immediately.
MIT License
Provides an easy way to hook into mjsunit and start running tests immediately.
myproject/test/core.js
exports.tests = {
aFailingTest : function() {
assertTrue(false);
},
aPassingTest : function() {
assertFalse(false);
}
};
myproject/test/runner.js
Note: if you want to use a custom variation of mjsunit, load it into the GLOBAL scope before requiring mjsunit.runner/lib/runner.
var suites = {
"core" : {
cases: require("./core").tests
/* Other options
setUp : function() { }, // called before every test
tearDown : function() { }, // called after every test
*/
}
};
require("mjsunit.runner/lib/runner").run(suites);
All suites
$ node myproject/test/runner.js
core 1/2 50% passing
--------------------------------------------
TOTALS: 1/2 50% passing
**All Suites (Verbose) ** $ node myproject/test/runner.js --verbose
Failure in core suite; method: aFailingTest
Failure: expected <true> found <false>
at Object.assertEquals (/usr/local/lib/node/libraries/mjsunit.js:93:5)
at /usr/local/lib/node/libraries/mjsunit.js:113:11
at /path/to/myproject/test/core.js:3:5
at /path/to/mjsunit.runner/lib/runner.js:36:25
at /path/to/mjsunit.runner/lib/runner.js:50:38
at Object.run (/path/to/mjsunit.runner/lib/runner.js:78:9)
at Object.<anonymous> (/path/to/myproject/test/runner.js:7:38)
at [object Object].<anonymous> (node.js:978:23)
at [object Object].emitSuccess (node.js:241:15)
at [object Object].<anonymous> (node.js:678:21)
core 1/2 50% passing
--------------------------------------------
TOTALS: 1/2 50% passing
Run a test in isolation
$ node myproject/test/runner.js --verbose --suite core --test aFailingTest
Failure in core suite; method: aFailingTest
Failure: expected <true> found <false>
at Object.assertEquals (/usr/local/lib/node/libraries/mjsunit.js:93:5)
at /usr/local/lib/node/libraries/mjsunit.js:113:11
at /path/to/myproject/test/core.js:3:5
at /path/to/mjsunit.runner/lib/runner.js:36:25
at Object.run (/path/to/mjsunit.runner/lib/runner.js:61:57)
at Object.<anonymous> (/path/to/myproject/test/runner.js:7:38)
at [object Object].<anonymous> (node.js:978:23)
at [object Object].emitSuccess (node.js:241:15)
at [object Object].<anonymous> (node.js:678:21)
at [object Object].emitSuccess (node.js:241:15)
1 of 1 failed (0% success)