Files
meteor/packages/tinytest/tinytest_server.js
2012-03-16 02:55:14 -07:00

31 lines
857 B
JavaScript

Meteor.startup(function () {
Meteor._ServerTestResults.remove();
});
Meteor.publish('tinytest/results', function (run_id) {
return Meteor._ServerTestResults.find({run_id: run_id},
{key: {collection: 'tinytest_results',
run_id: run_id}});
});
Meteor.methods({
'tinytest/run': function (run_id) {
this.unblock();
// XXX using private API === lame
var Future = __meteor_bootstrap__.require('fibers/future');
var future = new Future;
Meteor._runTests(function (report) {
/* onReport */
Meteor._ServerTestResults.insert({run_id: run_id, report: report});
Meteor.refresh({collection: 'tinytest_results', run_id: run_id});
}, function () {
/* onComplete */
future['return']();
});
future.wait();
}
});