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

Side by Side Diff: third_party/WebKit/LayoutTests/inspector-protocol/worker/worker-console.html

Issue 2141673002: [DevTools] Always send a copy of worker message through the page. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: addMessageFromWorker Created 4 years, 5 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
1 <html> 1 <html>
2 <head> 2 <head>
3 <script type="text/javascript" src="../../http/tests/inspector-protocol/inspecto r-protocol-test.js"></script> 3 <script type="text/javascript" src="../../http/tests/inspector-protocol/inspecto r-protocol-test.js"></script>
4 <script> 4 <script>
5 5
6 var worker; 6 var worker;
7 var onMessageCallbacks = {}; 7 var onMessageCallbacks = {};
8 8
9 function startWorker(callback) 9 function startWorker(callback)
10 { 10 {
(...skipping 20 matching lines...) Expand all
31 } 31 }
32 32
33 function stopWorker() 33 function stopWorker()
34 { 34 {
35 worker.terminate(); 35 worker.terminate();
36 worker = null; 36 worker = null;
37 } 37 }
38 38
39 function test() 39 function test()
40 { 40 {
41 var workerEventHandler = []; 41 var workerEventHandler = [];
kozy 2016/07/12 00:45:19 It should be an object.
dgozman 2016/07/12 01:16:38 Done.
42 InspectorTest.eventHandler["Console.messageAdded"] = onConsoleMessage.bind(n ull, false);
43 InspectorTest.eventHandler["Worker.workerCreated"] = onWorkerCreated; 42 InspectorTest.eventHandler["Worker.workerCreated"] = onWorkerCreated;
44 InspectorTest.eventHandler["Worker.dispatchMessageFromWorker"] = onWorkerMes sage; 43 InspectorTest.eventHandler["Worker.dispatchMessageFromWorker"] = onWorkerMes sage;
45 workerEventHandler["Console.messageAdded"] = onConsoleMessage.bind(null, tru e); 44 workerEventHandler["Console.messageAdded"] = onConsoleMessageFromWorker;
46 45
47 var workerId; 46 var workerId;
48 47
49 function onWorkerCreated(payload) 48 function onWorkerCreated(payload)
50 { 49 {
51 InspectorTest.log("Worker.created"); 50 InspectorTest.log("Worker.created");
52 workerId = payload.params.workerId; 51 workerId = payload.params.workerId;
53 } 52 }
54 53
55 var requestId = 0; 54 var requestId = 0;
(...skipping 28 matching lines...) Expand all
84 var eventName = messageObject["method"]; 83 var eventName = messageObject["method"];
85 var eventHandler = workerEventHandler[eventName]; 84 var eventHandler = workerEventHandler[eventName];
86 if (eventHandler) 85 if (eventHandler)
87 eventHandler(messageObject); 86 eventHandler(messageObject);
88 } 87 }
89 } 88 }
90 89
91 function logInWorker(message, next) 90 function logInWorker(message, next)
92 { 91 {
93 InspectorTest.log("Logging in worker: " + message); 92 InspectorTest.log("Logging in worker: " + message);
94 if (next) 93 InspectorTest.eventHandler["Console.messageAdded"] = onConsoleMessage;
95 InspectorTest.evaluateInPageAsync("logInWorkerFromPage(\"" + message + "\", %callback)", next); 94 InspectorTest.evaluateInPage("logInWorkerFromPage(\"" + message + "\")") ;
96 else 95
97 InspectorTest.evaluateInPage("logInWorkerFromPage(\"" + message + "\ ")"); 96 function onConsoleMessage(payload)
97 {
98 InspectorTest.log("Got console message from page: " + payload.params .message.text);
99 delete InspectorTest.eventHandler["Console.messageAdded"];
100 next();
101 }
98 } 102 }
99 103
100 var gotMessages = []; 104 var gotMessages = [];
101 var waitingForMessage; 105 var waitingForMessage;
102 var waitingForMessageCallback; 106 var waitingForMessageCallback;
103 107
104 function onConsoleMessage(fromWorker, payload) 108 function onConsoleMessageFromWorker(payload)
105 { 109 {
106 var message = payload.params.message.text; 110 var message = payload.params.message.text;
107 InspectorTest.log("Got console message from " + (fromWorker ? "worker" : "page") + ": " + message); 111 InspectorTest.log("Got console message from worker: " + message);
108 gotMessages.push(message); 112 gotMessages.push(message);
109 if (message === waitingForMessage) 113 if (message === waitingForMessage)
110 waitingForMessageCallback(); 114 waitingForMessageCallback();
111 } 115 }
112 116
113 function waitForMessage(message, next) 117 function waitForMessage(message, next)
114 { 118 {
115 if (gotMessages.indexOf(message) !== -1) { 119 if (gotMessages.indexOf(message) !== -1) {
116 next(); 120 next();
117 return; 121 return;
(...skipping 15 matching lines...) Expand all
133 }, 137 },
134 138
135 function log0(next) 139 function log0(next)
136 { 140 {
137 logInWorker("message0", next); 141 logInWorker("message0", next);
138 }, 142 },
139 143
140 function stop0(next) 144 function stop0(next)
141 { 145 {
142 InspectorTest.log("Stopping worker"); 146 InspectorTest.log("Stopping worker");
143 waitForMessage("message0", next); 147 InspectorTest.evaluateInPage("stopWorker()", next);
144 InspectorTest.evaluateInPage("stopWorker()");
145 }, 148 },
146 149
147 function start1(next) 150 function start1(next)
148 { 151 {
149 InspectorTest.log("Starting worker"); 152 InspectorTest.log("Starting worker");
150 InspectorTest.evaluateInPageAsync("startWorker(%callback)", next); 153 InspectorTest.evaluateInPageAsync("startWorker(%callback)", next);
151 }, 154 },
152 155
153 function log1(next) 156 function log1(next)
154 { 157 {
155 logInWorker("message1", next); 158 logInWorker("message1", next);
156 }, 159 },
157 160
158 function enable1(next) 161 function enable1(next)
159 { 162 {
160 InspectorTest.log("Sending Worker.enable"); 163 InspectorTest.log("Sending Worker.enable");
161 InspectorTest.sendCommandOrDie("Worker.enable", {}, next); 164 InspectorTest.sendCommandOrDie("Worker.enable", {}, next);
162 }, 165 },
163 166
164 function consoleEnable1(next) 167 function consoleEnable1(next)
165 { 168 {
166 InspectorTest.log("Sending Console.enable to worker"); 169 InspectorTest.log("Sending Console.enable to worker");
167 waitForMessage("message1", next); 170 waitForMessage("message1", next);
168 sendCommandToWorker("Console.enable", {}); 171 sendCommandToWorker("Console.enable", {});
169 }, 172 },
170 173
171 function log2(next) 174 function log2(next)
172 { 175 {
176 logInWorker("message2", next);
177 },
178
179 function waitForMessage2(next)
180 {
173 waitForMessage("message2", next); 181 waitForMessage("message2", next);
174 logInWorker("message2"); 182 },
183
184 function throw1(next)
185 {
186 logInWorker("throw1", next);
175 }, 187 },
176 188
177 function disable1(next) 189 function disable1(next)
178 { 190 {
179 InspectorTest.log("Sending Worker.disable"); 191 InspectorTest.log("Sending Worker.disable");
180 InspectorTest.sendCommandOrDie("Worker.disable", {}, next); 192 InspectorTest.sendCommandOrDie("Worker.disable", {}, next);
181 }, 193 },
182 194
183 function log3(next) 195 function log3(next)
184 { 196 {
(...skipping 26 matching lines...) Expand all
211 223
212 function consoleEnable2(next) 224 function consoleEnable2(next)
213 { 225 {
214 InspectorTest.log("Sending Console.enable to worker"); 226 InspectorTest.log("Sending Console.enable to worker");
215 waitForMessage("message4", next); 227 waitForMessage("message4", next);
216 sendCommandToWorker("Console.enable", {}); 228 sendCommandToWorker("Console.enable", {});
217 }, 229 },
218 230
219 function log5(next) 231 function log5(next)
220 { 232 {
233 logInWorker("message5", next);
234 },
235
236 function waitForMessage5(next)
237 {
221 waitForMessage("message5", next); 238 waitForMessage("message5", next);
222 logInWorker("message5");
223 }, 239 },
224 240
225 function stop2(next) 241 function stop2(next)
226 { 242 {
227 InspectorTest.log("Stopping worker"); 243 InspectorTest.log("Stopping worker");
228 InspectorTest.evaluateInPage("stopWorker()", next); 244 InspectorTest.evaluateInPage("stopWorker()", next);
229 }, 245 },
230 246
231 function start3(next) 247 function start3(next)
232 { 248 {
233 InspectorTest.log("Starting worker"); 249 InspectorTest.log("Starting worker");
234 InspectorTest.evaluateInPageAsync("startWorker(%callback)", next); 250 InspectorTest.evaluateInPageAsync("startWorker(%callback)", next);
235 }, 251 },
236 252
237 function log6(next) 253 function log6(next)
238 { 254 {
239 logInWorker("message6", next); 255 logInWorker("message6", next);
240 }, 256 },
241 257
242 function stop3(next) 258 function stop3(next)
243 { 259 {
244 InspectorTest.log("Stopping worker"); 260 InspectorTest.log("Stopping worker");
245 waitForMessage("message6", next); 261 InspectorTest.evaluateInPage("stopWorker()", next);
246 InspectorTest.evaluateInPage("stopWorker()");
247 }, 262 },
248 263
249 function disable2(next) 264 function disable2(next)
250 { 265 {
251 InspectorTest.log("Sending Worker.disable"); 266 InspectorTest.log("Sending Worker.disable");
252 InspectorTest.sendCommandOrDie("Worker.disable", {}, next); 267 InspectorTest.sendCommandOrDie("Worker.disable", {}, next);
253 } 268 }
254 ]; 269 ];
255 270
256 function runNextStep() 271 function runNextStep()
257 { 272 {
258 if (!steps.length) { 273 if (!steps.length) {
259 InspectorTest.completeTest(); 274 InspectorTest.completeTest();
260 return; 275 return;
261 } 276 }
262 var nextStep = steps.shift(); 277 var nextStep = steps.shift();
263 InspectorTest.safeWrap(nextStep)(runNextStep); 278 InspectorTest.safeWrap(nextStep)(runNextStep);
264 } 279 }
265 280
266 runNextStep(); 281 runNextStep();
267 } 282 }
268 </script> 283 </script>
269 </head> 284 </head>
270 <body onload="runTest()"> 285 <body onload="runTest()">
271 </body> 286 </body>
272 </html> 287 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698