For instance:
test("expect in test", 3, function() {
ok(true);
});
won't result as failed.
I tracked it down and the problem looks to be that the lines checking this:
if ( config.expected && config.expected != config.assertions.length ) {
QUnit.ok( false, "Expected " + config.expected + " assertions, but " + config.assertions.length + " were run" );
}
are now at the end of the synchronize function, too late to be tallied as "bad".