MCPcopy Create free account
hub / github.com/OpenEndedGroup/Field2 / step

Function step

lib/web/CodeMirror/test/driver.js:45–93  ·  view source on GitHub ↗
(i)

Source from the content-addressed store, hash-verified

43function runTests(callback) {
44 var totalTime = 0;
45 function step(i) {
46 for (;;) {
47 if (i === tests.length) {
48 running = false;
49 return callback("done");
50 }
51 var test = tests[i], skip = false;
52 if (filters.length) {
53 skip = true;
54 for (var j = 0; j < filters.length; j++)
55 if (test.name.match(filters[j])) skip = false;
56 }
57 if (skip) {
58 callback("skipped", test.name, message);
59 i++;
60 } else {
61 break;
62 }
63 }
64 var expFail = test.expectedFail, startTime = +new Date, threw = false;
65 try {
66 var message = test.func();
67 } catch(e) {
68 threw = true;
69 if (expFail) callback("expected", test.name);
70 else if (e instanceof Failure) callback("fail", test.name, e.message);
71 else {
72 var pos = /(?:\bat |@).*?([^\/:]+):(\d+)/.exec(e.stack);
73 if (pos) console["log"](e.stack);
74 callback("error", test.name, e.toString() + (pos ? " (" + pos[1] + ":" + pos[2] + ")" : ""));
75 }
76 }
77 if (!threw) {
78 if (expFail) callback("fail", test.name, message || "expected failure, but passed");
79 else callback("ok", test.name, message);
80 }
81 if (!quit) { // Run next test
82 var delay = 0;
83 totalTime += (+new Date) - startTime;
84 if (totalTime > 500){
85 totalTime = 0;
86 delay = 50;
87 }
88 setTimeout(function(){step(i + 1);}, delay);
89 } else { // Quit tests
90 running = false;
91 return null;
92 }
93 }
94 step(0);
95}
96

Callers 1

runTestsFunction · 0.85

Calls 4

callbackFunction · 0.70
execMethod · 0.65
matchMethod · 0.45
toStringMethod · 0.45

Tested by

no test coverage detected