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

Side by Side Diff: third_party/WebKit/LayoutTests/inspector-protocol/worker/exception-from-worker-contains-stack.js

Issue 2951913002: [DevTools] Support multiple sessions in Target domain (Closed)
Patch Set: simplify Created 3 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 (async function(testRunner) { 1 (async function(testRunner) {
2 let {page, session, dp} = await testRunner.startBlank('Tests that console mess age from worker contains stack trace.'); 2 let {page, session, dp} = await testRunner.startBlank('Tests that console mess age from worker contains stack trace.');
3 3
4 var workerRequestId = 1; 4 var workerRequestId = 1;
5 function sendCommandToWorker(method, params, workerId) { 5 function sendCommandToWorker(method, params, workerSessionId) {
6 dp.Target.sendMessageToTarget({ 6 dp.Target.sendMessageToTarget({
7 targetId: workerId, 7 sessionId: workerSessionId,
8 message: JSON.stringify({ method: method, params: params, id: workerReques tId++ }) 8 message: JSON.stringify({ method: method, params: params, id: workerReques tId++ })
9 }); 9 });
10 } 10 }
11 11
12 var waitForWorkers = 2; 12 var waitForWorkers = 2;
13 dp.Target.onAttachedToTarget(messageObject => { 13 dp.Target.onAttachedToTarget(messageObject => {
14 var workerId = messageObject['params']['targetInfo']['targetId']; 14 var workerSessionId = messageObject.params.sessionId;
15 testRunner.log('Worker created'); 15 testRunner.log('Worker created');
16 sendCommandToWorker('Runtime.enable', {}, workerId); 16 sendCommandToWorker('Runtime.enable', {}, workerSessionId);
17 if (!--waitForWorkers) 17 if (!--waitForWorkers)
18 session.evaluate('worker1.postMessage(239);worker2.postMessage(42);'); 18 session.evaluate('worker1.postMessage(239);worker2.postMessage(42);');
19 }); 19 });
20 20
21 var workerTerminated = false; 21 var workerTerminated = false;
22 var messageReceived = false; 22 var messageReceived = false;
23 dp.Target.onReceivedMessageFromTarget(messageObject => { 23 dp.Target.onReceivedMessageFromTarget(messageObject => {
24 var message = JSON.parse(messageObject['params']['message']); 24 var message = JSON.parse(messageObject['params']['message']);
25 if (message['method'] === 'Runtime.exceptionThrown') { 25 if (message['method'] === 'Runtime.exceptionThrown') {
26 var callFrames = message.params.exceptionDetails.stackTrace ? message.para ms.exceptionDetails.stackTrace.callFrames : []; 26 var callFrames = message.params.exceptionDetails.stackTrace ? message.para ms.exceptionDetails.stackTrace.callFrames : [];
(...skipping 15 matching lines...) Expand all
42 await dp.Target.setAutoAttach({autoAttach: true, waitForDebuggerOnStart: false }); 42 await dp.Target.setAutoAttach({autoAttach: true, waitForDebuggerOnStart: false });
43 session.evaluate(` 43 session.evaluate(`
44 window.worker1 = new Worker('${testRunner.url('../resources/worker-with-thro w.js')}'); 44 window.worker1 = new Worker('${testRunner.url('../resources/worker-with-thro w.js')}');
45 window.worker1.onerror = function(e) { 45 window.worker1.onerror = function(e) {
46 e.preventDefault(); 46 e.preventDefault();
47 worker1.terminate(); 47 worker1.terminate();
48 } 48 }
49 window.worker2 = new Worker('${testRunner.url('../resources/worker-with-thro w.js')}'); 49 window.worker2 = new Worker('${testRunner.url('../resources/worker-with-thro w.js')}');
50 `); 50 `);
51 }) 51 })
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698