diff --git a/test/backbone.html b/test/backbone.html index d5038bcf1..0238269ad 100644 --- a/test/backbone.html +++ b/test/backbone.html @@ -43,6 +43,7 @@ QUnit.testStart(function(details) { var test = QUnit.config.current, + finish = test.finish, skippedTests = skipped[details.module], skippedAsserts = skippedTests && skippedTests[details.name]; @@ -55,9 +56,14 @@ test.expected = 0; return; } - test.finish = _.wrap(test.finish, function(func) { - _.each(this.assertions, function(assert) { - var message = _.unescape(_.result(/^([\s\S]*?)<\/span>/.exec(assert.message), 1)), + test.finish = function() { + var index = -1, + asserts = this.assertions, + length = assertions.length; + + while (++index < length) { + var assert = asserts[index], + message = _.unescape(_.result(/^([\s\S]*?)<\/span>/.exec(assert.message), 1)), died = _.result(/^Died on test #\d+/.exec(message), 0), expected = _.unescape(_.result(/Expected: *<\/th>
([\s\S]*?)<\/pre>/.exec(assert.message), 1));
 
@@ -68,9 +74,9 @@
 							    )) {
 							  assert.result = true;
 							}
-						});
-						func.call(this);
-					});
+						}
+						finish.call(this);
+					};
 				});
 			}());
 
diff --git a/test/underscore.html b/test/underscore.html
index e444546bf..cede74386 100644
--- a/test/underscore.html
+++ b/test/underscore.html
@@ -103,6 +103,7 @@
 
 				QUnit.testStart(function(details) {
 					var test = QUnit.config.current,
+					    finish = test.finish,
 					    skippedTests = skipped[details.module],
 					    skippedAsserts = skippedTests && skippedTests[details.name];
 
@@ -115,9 +116,14 @@
 						test.expected = 0;
 						return;
 					}
-					test.finish = _.wrap(test.finish, function(func) {
-						_.each(this.assertions, function(assert) {
-							var message = _.unescape(_.result(/^([\s\S]*?)<\/span>/.exec(assert.message), 1)),
+					test.finish = function() {
+						var index = -1,
+						    asserts = this.assertions,
+						    length = assertions.length;
+
+						while (++index < length) {
+							var assert = asserts[index],
+							    message = _.unescape(_.result(/^([\s\S]*?)<\/span>/.exec(assert.message), 1)),
 							    died = _.result(/^Died on test #\d+/.exec(message), 0),
 							    expected = _.unescape(_.result(/Expected: *<\/th>
([\s\S]*?)<\/pre>/.exec(assert.message), 1));
 
@@ -128,9 +134,9 @@
 							    )) {
 							  assert.result = true;
 							}
-						});
-						func.call(this);
-					});
+						}
+						finish.call(this);
+					};
 				});
 			}());