Refactor suite timing out of Env and into each Reporter

[finishes #45659879]
This commit is contained in:
Davis W. Frank and Sheel Choksi
2013-07-03 09:29:52 -07:00
parent 09fe7b0540
commit 179e54b9fb
16 changed files with 213 additions and 52 deletions
+32 -6
View File
@@ -50,6 +50,7 @@ getJasmineRequireObj().core = function(jRequire) {
j$.Spec = jRequire.Spec();
j$.Spy = jRequire.Spy(j$);
j$.Suite = jRequire.Suite();
j$.Timer = jRequire.Timer();
j$.version = jRequire.version();
j$.matchers = jRequire.requireMatchers(jRequire, j$);
@@ -648,23 +649,30 @@ getJasmineRequireObj().Env = function(j$) {
};
getJasmineRequireObj().JsApiReporter = function() {
function JsApiReporter(jasmine) { // TODO: this doesn't appear to be used
this.jasmine = jasmine || {};
var noopTimer = {
start: function(){},
elapsed: function(){ return 0; }
};
function JsApiReporter(options) {
var timer = options.timer || noopTimer,
status = "loaded";
this.started = false;
this.finished = false;
var status = 'loaded';
this.jasmineStarted = function() {
this.started = true;
status = 'started';
timer.start();
};
var executionTime;
this.jasmineDone = function(options) {
this.jasmineDone = function() {
this.finished = true;
executionTime = options.executionTime;
executionTime = timer.elapsed();
status = 'done';
};
@@ -1567,6 +1575,24 @@ if (typeof window == void 0 && typeof exports == "object") {
exports.Suite = jasmineRequire.Suite;
}
getJasmineRequireObj().Timer = function() {
function Timer(options) {
options = options || {};
var now = options.now || function() { return new Date().getTime(); },
startTime;
this.start = function() {
startTime = now();
};
this.elapsed = function() {
return now() - startTime;
};
}
return Timer;
};
getJasmineRequireObj().matchersUtil = function(j$) {
// TODO: what to do about jasmine.pp not being inject? move to JSON.stringify? gut PrettyPrinter?