Only run tests where full name matches pattern (string/regexp) (Add module runner)
buster.testFilter(context, filter)
buster.moduleRunner(path)
Runner should understand pending/deferred tests
Reporter should display pending/deferred tests
Separate stats reporter into separate object
Bind events in bindToRunner method
Flatten test contexts immediately
Allow node my-test.js to automatically run tests
Global should/before/after/describe functions?
use export method on object exported from require(“buster-xunit”) and require(“buster-bdd”)
Catch unexpected exceptions (No, catch in runner setup)
“Disarm” promises after timeout
buster.xUnitConsoleReporter.create({ color: true, bright: true }).listen(runner);
Catch run-away exceptions
Change this.log to buster.log
Test context data model should have deferred boolean, not support “//should”
Unsupported contexts in all reporters
Timeout in test and teardown causes double timeout
Async setup that never calls done -> times out, but still runs test and teardown
setUp: function (done) {
this.server = this.cli.createServer();
this.server.listen(9999);
},
tearDown: function (done) {
this.server.on(“close”, function () {
buster.log(“Hmm”);
done();
});
this.server.close();
},
“should process requests with buster server”: function (done) {
this.stub(buster.server, “respond”);
var server = this.cli.createServer();
http.get({ host: “localhost”, port: 9999 }, function () {
buster.log(buster.server.respond.callCount);
assert.calledOnce(buster.server.respond);
done();
});
}
Async test + teardown = A marker is not removed
setUp: function () {
this.server = this.cli.createServer();
this.server.listen(9999);
},
tearDown: function (done) {
this.server.on(“close”, done);
this.server.close();
},
“should process requests with buster server”: function (done) {
Flag duplicate test names
Exception in async function is not being caught (causes timeout)
Test runner is catching exceptions that it’s not handling
If an exception is thrown before the tests start running (failed require)
Fix assertion counting plumbing. testRunner.assertionPassed(assertion)