X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=build%2Ftest%2Ftestrunner.js;fp=build%2Ftest%2Ftestrunner.js;h=0000000000000000000000000000000000000000;hb=b0c3711d3e8bd844d1cfa8569864df1c1f73180a;hp=b315226e408422bc0dbe4058e64991e1fd97929c;hpb=4dcbfc92c391983059b920d2a500c1246869f4c7;p=jquery.git diff --git a/build/test/testrunner.js b/build/test/testrunner.js deleted file mode 100644 index b315226..0000000 --- a/build/test/testrunner.js +++ /dev/null @@ -1,124 +0,0 @@ -var fixture; -var Test; -var stats = { - all: 0, - bad: 0 -}; - -function runTest(tests) { - var startTime = new Date(); - - fixture = document.getElementById('main').innerHTML; - tests(); - var runTime = new Date() - startTime; - var result = document.createElement("div"); - result.innerHTML = 'Tests completed in ' + runTime + ' milliseconds.
' + - stats.bad + ' tests of ' + stats.all + ' failed.'; - document.getElementsByTagName("body")[0].appendChild(result); -} - -function test(name, callback) { - Test = []; - try { - callback(); - } catch(e) { - if(typeof console != "undefined") { - console.error("Test " + name + " died, exception and test follows"); - console.error(e); - console.warn(callback.toString()); - } - Test.push( [ false, "Died on test #" + (Test.length+1) + ": " + e ] ); - } - reset(); - - var good = 0, bad = 0; - var ol = document.createElement("ol"); - - var li = "", state = "pass"; - for ( var i = 0; i < Test.length; i++ ) { - var li = document.createElement("li"); - li.className = Test[i][0] ? "pass" : "fail"; - li.innerHTML = Test[i][1]; - ol.appendChild( li ); - - stats.all++; - if ( !Test[i][0] ) { - state = "fail"; - bad++; - stats.bad++; - } else good++; - } - - var li = document.createElement("li"); - li.className = state; - - var b = document.createElement("b"); - b.innerHTML = name + " (" + bad + ", " + good + ", " + Test.length + ")"; - b.onclick = function(){ - var n = this.nextSibling; - if ( jQuery.css( n, "display" ) == "none" ) - n.style.display = "block"; - else - n.style.display = "none"; - }; - li.appendChild( b ); - li.appendChild( ol ); - - document.getElementById("tests").appendChild( li ); -} - -/** - * Resets the test setup. Useful for tests that modify the DOM. - */ -function reset() { - document.getElementById('main').innerHTML = fixture; -} - -/** - * Asserts true. - * @example ok( $("a").size() > 5, "There must be at least 5 anchors" ); - */ -function ok(a, msg) { - Test.push( [ !!a, msg ] ); -} - -/** - * Asserts that two arrays are the same - */ -function isSet(a, b, msg) { - var ret = true; - if ( a && b && a.length == b.length ) { - for ( var i in a ) - if ( a[i] != b[i] ) - ret = false; - } else - ret = false; - if ( !ret && console ) - console.log( msg, a, b ); - Test.push( [ ret, msg ] ); -} - -/** - * Returns an array of elements with the given IDs, eg. - * @example q("main", "foo", "bar") - * @result [
, , ] - */ -function q() { - var r = []; - for ( var i = 0; i < arguments.length; i++ ) - r.push( document.getElementById( arguments[i] ) ); - return r; -} - -/** - * Asserts that a select matches the given IDs - * @example t("Check for something", "//[a]", ["foo", "baar"]); - * @result returns true if "//[a]" return two elements with the IDs 'foo' and 'baar' - */ -function t(a,b,c) { - var f = jQuery.find(b); - var s = ""; - for ( var i = 0; i < f.length; i++ ) - s += (s && ",") + '"' + f[i].id + '"'; - isSet(f, q.apply(q,c), a + " (" + b + ")"); -} \ No newline at end of file