mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-01-29 14:37:49 +00:00
115 lines
3.5 KiB
HTML
115 lines
3.5 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Backbone Test Suite</title>
|
|
<link rel="stylesheet" href="../vendor/qunit/qunit/qunit.css">
|
|
<style>
|
|
body > #qunit-header {
|
|
display: none;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div id="qunit"></div>
|
|
<h1 id="qunit-header"></h1>
|
|
<div id="qunit-fixture">
|
|
<div id='testElement'>
|
|
<h1>Test</h1>
|
|
</div>
|
|
</div>
|
|
<script src="../vendor/json-js/json2.js"></script>
|
|
<script src="../vendor/jquery/jquery.js"></script>
|
|
<script src="../vendor/platform.js/platform.js"></script>
|
|
<script src="../vendor/qunit/qunit/qunit.js"></script>
|
|
<script src="./asset/test-ui.js"></script>
|
|
<script src="../lodash.js"></script>
|
|
<script>
|
|
var lodash = _.noConflict();
|
|
|
|
QUnit.config.hidepassed = true;
|
|
|
|
// assign results to `global_test_results` for Sauce Labs
|
|
var global_test_results;
|
|
QUnit.done(function(results) {
|
|
global_test_results = results;
|
|
});
|
|
|
|
// skip tests we intentionally fail or those with problems
|
|
(function() {
|
|
var skipped = {
|
|
'Backbone.Collection': {
|
|
'set with many models does not overflow the stack': true
|
|
},
|
|
'Backbone.Router': {
|
|
'#2656 - No trailing slash on root.': true,
|
|
'#2765 - Fragment matching sans query/hash.': true
|
|
}
|
|
};
|
|
|
|
// only skip `Backbone.Router` tests in IE < 8
|
|
if (!(document.attachEvent && (document.documentMode || 0) < 8)) {
|
|
delete skipped['Backbone.Router'];
|
|
}
|
|
|
|
QUnit.testStart(function(details) {
|
|
var test = QUnit.config.current,
|
|
finish = test.finish,
|
|
skippedTests = skipped[details.module],
|
|
skippedAsserts = skippedTests && skippedTests[details.name];
|
|
|
|
if (!skippedAsserts) {
|
|
return;
|
|
}
|
|
if (skippedAsserts === true) {
|
|
test.async = false;
|
|
test.callback = function() {};
|
|
test.expected = 0;
|
|
return;
|
|
}
|
|
test.finish = function() {
|
|
var index = -1,
|
|
asserts = this.assertions,
|
|
length = asserts.length;
|
|
|
|
while (++index < length) {
|
|
var assert = asserts[index],
|
|
message = _.unescape(_.result(/^<span class='test-message'>([\s\S]*?)<\/span>/.exec(assert.message), 1)),
|
|
died = _.result(/^Died on test #\d+/.exec(message), 0),
|
|
expected = _.unescape(_.result(/Expected: *<\/th><td><pre>([\s\S]*?)<\/pre>/.exec(assert.message), 1));
|
|
|
|
if ((message && _.contains(skippedAsserts, message)) ||
|
|
(died && _.contains(skippedAsserts, died)) ||
|
|
(expected && (_.contains(skippedAsserts, expected) ||
|
|
_.contains(skippedAsserts, expected.replace(/\s+/g, '')))
|
|
)) {
|
|
assert.result = true;
|
|
}
|
|
}
|
|
finish.call(this);
|
|
};
|
|
});
|
|
}());
|
|
|
|
// load Lo-Dash again to overwrite the existing `_` value
|
|
document.write('<script src="' + ui.buildPath + '"><\/script>');
|
|
</script>
|
|
<script>
|
|
_.mixin({
|
|
'debounce': _.debounce || lodash.debounce,
|
|
'defer': _.defer || lodash.defer,
|
|
'pluck': _.pluck || lodash.pluck
|
|
});
|
|
</script>
|
|
<script src="../vendor/backbone/backbone.js"></script>
|
|
<script src="../vendor/backbone/test/environment.js"></script>
|
|
<script src="../vendor/backbone/test/noconflict.js"></script>
|
|
<script src="../vendor/backbone/test/events.js"></script>
|
|
<script src="../vendor/backbone/test/model.js"></script>
|
|
<script src="../vendor/backbone/test/collection.js"></script>
|
|
<script src="../vendor/backbone/test/router.js"></script>
|
|
<script src="../vendor/backbone/test/view.js"></script>
|
|
<script src="../vendor/backbone/test/sync.js"></script>
|
|
</body>
|
|
</html>
|