Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(63)

Side by Side Diff: LayoutTests/fast/workers/worker-timeout-order.html

Issue 563203002: [Blink-WebWorkers] WorkerSharedTimer cancels extra delayed tasks. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Added layout tests. Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 <!DOCTYPE html>
2 <html>
3 <body>
4 <p>setTimeOut order in Web Workers.</p>
5 <div id="result"></div>
6 <script type="text/javascript">
7 function log(message)
8 {
9 document.getElementById("result").innerHTML += message + "</br>";
10 }
11
12 if (window.testRunner) {
13 testRunner.dumpAsText();
14 testRunner.waitUntilDone();
15 }
16
17 var worker = new Worker('resources/worker-timeout-order.js');
18 // Start the first test of settimeout's
19 var currentTest = "TS1";
20 var lastTestResult = 0;
21 var testCounterLimit = 3;
22 var timerLimit = 3;
23 var testStarted = false;
24 var testAlreadyFailed = false;
25 worker.postMessage("TS1");
26
27 worker.onmessage = function(evt) {
28 if(testStarted) {
29 var currentNum = evt.data;
30 if(lastTestResult == currentNum - 1 && !testAlreadyFailed) {
31 lastTestResult = currentNum;
32 --timerLimit;
33 // we got all the results in order
34 if(lastTestResult == testCounterLimit) {
35 if(currentTest == "TS1") {
36 if(timerLimit == 0) {
37 log("PASS: TimeOutSuite1");
38 worker.postMessage("TS2");
39 testAlreadyFailed = false;
40 timerLimit = 3;
41 currentTest = "TS2";
42 }
43 }
44 else if (currentTest == "TS2") {
45 if(timerLimit == 0) {
46 log("PASS: TimeOutSuite2");
47 testStarted = false;
48 }
49 }
50 lastTestResult = 0;
51 }
52 }
53 else {
54 testAlreadyFailed = true;
55 --timerLimit;
56 if(currentTest == "TS1") {
57 if(timerLimit == 0) {
58 log("FAIL: TimeOutSuite1");
59 worker.postMessage("TS2");
60 timerLimit = 3;
61 testAlreadyFailed = false;
62 currentTest = "TS2";
63 lastTestResult = 0;
64 }
65 }
66 else if (currentTest == "TS2") {
67 if(timerLimit == 0) {
68 log("FAIL: TimeOutSuite2");
69 testStarted = false;
70 }
71 }
72
73 }
74 }
75 if(evt.data == "Test started.") {
76 log(evt.data);
77 testStarted = true;
78 }
79 if (evt.data == "DONE") {
80 log("DONE.");
81 if (window.testRunner)
82 testRunner.notifyDone();
83 }
84 }
85 </script>
86 </body>
87 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698