| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- var runTests = function(testFuncs, testNum) {
- var failed = false;
- var successCount = 0;
- window.fail = function() {
- failed = true;
- document.getElementById('success').style.display = 'none';
- document.getElementById('failed').style.display = 'block';
- document.getElementById('running').style.display = 'none';
- console.error(new Error());
- };
- window.failCallback = function() {
- var err = new Error();
- return function() {
- console.error(err);
- window.fail();
- };
- };
- window.success = function() {
- if (!failed && ++successCount == (typeof testNum !== 'undefined' ? 1 : testFuncs.length)) {
- document.getElementById('success').style.display = 'block';
- document.getElementById('running').style.display = 'none';
- }
- };
- window.testNotInjected = function(id) {
- };
- window.testInjected = function(id) {
- };
- window.isEqualElseFail = function(count, num, callback) {
- if (count === num) {
- callback && callback();
- return true;
- } else if (count > num) {
- window.fail();
- return false;
- }
- };
- for (var i = 0; i < testFuncs.length; ++i) {
- if (typeof testNum !== 'undefined') {
- // testing only one test
- if (i === testNum) {
- testFuncs[i]();
- } else {
- // set dummy function
- window['SVGInject' + (i + 1)] = function() {};
- window['SVGInject' + (i + 1)].err = function() {};
- }
- } else {
- testFuncs[i]();
- }
- }
- };
- var domReady = function(callback) {
- var ready = false;
- var detach = function() {
- if(document.addEventListener) {
- document.removeEventListener("DOMContentLoaded", completed);
- window.removeEventListener("load", completed);
- } else {
- document.detachEvent("onreadystatechange", completed);
- window.detachEvent("onload", completed);
- }
- };
- var completed = function() {
- if(!ready && (document.addEventListener || event.type === "load" || document.readyState === "complete")) {
- ready = true;
- detach();
- callback();
- }
- };
- if(document.readyState === "complete") {
- callback();
- } else if(document.addEventListener) {
- document.addEventListener("DOMContentLoaded", completed);
- window.addEventListener("load", completed);
- } else {
- document.attachEvent("onreadystatechange", completed);
- window.attachEvent("onload", completed);
- var top = false;
- try {
- top = window.frameElement === null && document.documentElement;
- } catch(e) {}
- if(top && top.doScroll) {
- (function scrollCheck() {
- if(ready) return;
- try {
- top.doScroll("left");
- } catch(e) {
- return setTimeout(scrollCheck, 50);
- }
- ready = true;
- detach();
- callback();
- })();
- }
- }
- };
|