Move afterAll reporting into Suite since that's where they're being tracked

This commit is contained in:
slackersoft
2014-08-27 08:13:17 -07:00
parent 97867b2bf5
commit f8bccabf03
3 changed files with 16 additions and 16 deletions

View File

@@ -173,9 +173,6 @@ getJasmineRequireObj().Env = function(j$) {
reporter.afterAllEvent('Error thrown: '+ (e.message || e.description));
}
};
options.reportExpectationFailure = function(message) {
reporter.afterAllEvent('Expectation failed: '+ message);
};
new j$.QueueRunner(options).execute();
};
@@ -185,7 +182,10 @@ getJasmineRequireObj().Env = function(j$) {
id: getNextSuiteId(),
description: 'Jasmine__TopLevel__Suite',
queueRunner: queueRunnerFactory,
resultCallback: function() {} // TODO - hook this up
resultCallback: function() {}, // TODO - hook this up
reportExpectationFailure: function(message) {
reporter.afterAllEvent('Expectation failed: '+ message);
}
});
runnableLookupTable[topSuite.id] = topSuite;
defaultResourcesForRunnable(topSuite.id);
@@ -241,6 +241,9 @@ getJasmineRequireObj().Env = function(j$) {
currentlyExecutingSuites.pop();
}
reporter.suiteDone(attrs);
},
reportExpectationFailure: function(message) {
reporter.afterAllEvent('Expectation failed: '+ message);
}
});

View File

@@ -19,8 +19,6 @@ getJasmineRequireObj().QueueRunner = function(j$) {
this.userContext = attrs.userContext || {};
this.timer = attrs.timeout || {setTimeout: setTimeout, clearTimeout: clearTimeout};
this.reportException = attrs.reportException || function() {};
this.reportExpectationFailure = attrs.reportExpectationFailure || function() {};
this.afterAllExpectationFailures = attrs.afterAllExpectationFailures || [];
}
QueueRunner.prototype.execute = function() {
@@ -39,7 +37,6 @@ getJasmineRequireObj().QueueRunner = function(j$) {
return attemptAsync(queueableFn);
} else {
attemptSync(queueableFn);
flushAfterAllExpectationFailures();
}
}
@@ -63,7 +60,6 @@ getJasmineRequireObj().QueueRunner = function(j$) {
},
next = once(function () {
clearTimeout(timeoutId);
flushAfterAllExpectationFailures();
self.run(queueableFns, iterativeIndex + 1);
}),
timeoutId;
@@ -97,12 +93,6 @@ getJasmineRequireObj().QueueRunner = function(j$) {
throw e;
}
}
function flushAfterAllExpectationFailures() {
while (self.afterAllExpectationFailures.length) {
self.reportExpectationFailure(self.afterAllExpectationFailures.pop());
}
}
};
return QueueRunner;

View File

@@ -8,6 +8,7 @@ getJasmineRequireObj().Suite = function() {
this.resultCallback = attrs.resultCallback || function() {};
this.clearStack = attrs.clearStack || function(fn) {fn();};
this.expectationFactory = attrs.expectationFactory;
this.reportExpectationFailure = attrs.reportExpectationFailure || function() {};
this.beforeFns = [];
this.afterFns = [];
@@ -90,11 +91,11 @@ getJasmineRequireObj().Suite = function() {
queueableFns: allFns,
onComplete: complete,
userContext: this.sharedUserContext(),
onException: function() { self.onException.apply(self, arguments); },
afterAllExpectationFailures: this.afterAllExpectationFailures
onException: function() { self.onException.apply(self, arguments); }
});
function complete() {
self.reportAfterAllExpectationFailures();
self.resultCallback(self.result);
if (onComplete) {
@@ -107,6 +108,12 @@ getJasmineRequireObj().Suite = function() {
}
};
Suite.prototype.reportAfterAllExpectationFailures = function() {
while (this.afterAllExpectationFailures.length) {
this.reportExpectationFailure(this.afterAllExpectationFailures.pop());
}
};
Suite.prototype.isExecutable = function() {
var foundActive = false;
for(var i = 0; i < this.children.length; i++) {