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

Side by Side Diff: third_party/WebKit/LayoutTests/inspector-protocol/debugger/debugger-pause-dedicated-worker-loop.js

Issue 2968523003: [DevTools] Migrate inspector-protocol/debugger tests to new harness (Closed)
Patch Set: all tests 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
(Empty)
1 (async function(testRunner) {
2 let {page, session, dp} = await testRunner.startBlank('');
3
4 await session.evaluate(`
5 window.worker = new Worker('${testRunner.url('resources/dedicated-worker-loo p.js')}');
6 var resolve;
7 window.workerMessageReceivedPromise = new Promise(f => resolve = f);
8 window.worker.onmessage = function(event) {
9 if (event.data === 'WorkerMessageReceived')
10 resolve();
11 };
12 `);
13 testRunner.log('Started worker');
14
15 var workerId;
16 var workerRequestId = 1;
17 function sendCommandToWorker(method, params) {
18 var message = {method, params, id: workerRequestId};
19 dp.Target.sendMessageToTarget({targetId: workerId, message: JSON.stringify(m essage)});
20 return workerRequestId++;
21 }
22
23 dp.Target.setAutoAttach({autoAttach: true, waitForDebuggerOnStart: false});
24
25 var debuggerEnableRequestId = -1;
26 var evaluateRequestId = -1;
27
28 dp.Target.onReceivedMessageFromTarget(async messageObject => {
29 var message = JSON.parse(messageObject.params.message);
30 if (message.id === debuggerEnableRequestId) {
31 testRunner.log('Did enable debugger');
32 // Start tight loop in the worker.
33 await dp.Runtime.evaluate({expression: 'worker.postMessage(1)' });
34 testRunner.log('Did post message to worker');
35 }
36 if (message.id === evaluateRequestId) {
37 var value = message.result.result.value;
38 if (value === true)
39 testRunner.log('SUCCESS: evaluated, result: ' + value);
40 else
41 testRunner.log('FAIL: evaluated, result: ' + value);
42 testRunner.completeTest();
43 }
44 });
45
46 workerId = (await dp.Target.onceAttachedToTarget()).params.targetInfo.targetId ;
47 testRunner.log('Worker created');
48 testRunner.log('didConnectToWorker');
49 // Enable debugger so that V8 can interrupt and handle inspector commands whil e there is a script running in a tight loop.
50 debuggerEnableRequestId = sendCommandToWorker('Debugger.enable', {});
51
52 await session.evaluateAsync('workerMessageReceivedPromise');
53 evaluateRequestId = sendCommandToWorker('Runtime.evaluate', { 'expression': 'm essage_id > 1'});
54 })
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698