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

Side by Side Diff: LayoutTests/fast/workers/worker-error-handler-worker.html

Issue 607513002: Onerror return value handling in workers fixed as per HTML5 spec. Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Added new layout tests and rebaselined two of them. Created 6 years, 2 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>Testing worker error handler invocation order.</p>
5 <div id="result"></div>
6 <script type="text/javascript">
7 var windowErrorHandlerInvoked = false;
8 var workerErrorHandlerInvoked = false;
9 var workerGlobalScopeErrorHandlerInvoked = false;
10 var testFlagged = false;
11 function log(message)
12 {
13 document.getElementById("result").innerHTML += message + "</br>";
14 }
15
16 if (window.testRunner) {
17 testRunner.dumpAsText();
18 testRunner.waitUntilDone();
19 }
20
21 window.onerror = function (e) {
22 windowErrorHandlerInvoked = true;
23 log("FAIL: Window error handler should not be invoked!");
24 }
25
26 var worker = new Worker('resources/worker-error-handler-worker.js');
27 worker.postMessage("Start");
28
29 worker.onmessage = function(evt) {
30 if (evt.data == "workerGlobalScopeErrorHandlerInvoked") {
31 workerGlobalScopeErrorHandlerInvoked = true;
32 log("PASS: WorkerGlobalScope error handler invoked.");
33 }
34 }
35 worker.onerror = function (e) {
36 workerErrorHandlerInvoked = true;
37 log("PASS: Worker error handler invoked.");
38 setTimeout(checkErrorStatus(), 100);
39 // We have cancelled this error event, hence should it should
40 // not be propagated to the window.onerror error handler.
41 return true;
42 }
43
44 function checkErrorStatus() {
45 if(!windowErrorHandlerInvoked) {
46 log("TEST PASS.");
47 }
48 else {
49 log("TEST FAIL.")
50 }
51 log("DONE.")
52 if (window.testRunner)
53 testRunner.notifyDone();
54 }
55 </script>
56 </body>
57 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698