OLD | NEW |
(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.js'
)}'); |
| 6 window.worker.onmessage = function(event) { }; |
| 7 window.worker.postMessage(1); |
| 8 `); |
| 9 testRunner.log('Started worker'); |
| 10 |
| 11 var workerRequestId = 1; |
| 12 function sendCommandToWorker(method, params) { |
| 13 var message = {method, params, id: workerRequestId}; |
| 14 dp.Target.sendMessageToTarget({targetId: workerId, message: JSON.stringify(m
essage)}); |
| 15 return workerRequestId++; |
| 16 } |
| 17 |
| 18 dp.Debugger.enable(); |
| 19 dp.Runtime.evaluate({expression: 'debugger;' }); |
| 20 await dp.Debugger.oncePaused(); |
| 21 testRunner.log(`Paused on 'debugger;'`); |
| 22 |
| 23 dp.Target.setAutoAttach({autoAttach: true, waitForDebuggerOnStart: false}); |
| 24 |
| 25 var messageObject = await dp.Target.onceAttachedToTarget(); |
| 26 var workerId = messageObject.params.targetInfo.targetId; |
| 27 testRunner.log('Worker created'); |
| 28 testRunner.log('didConnectToWorker'); |
| 29 |
| 30 var savedWorkerRequestId = sendCommandToWorker('Runtime.evaluate', {expression
: '1+1'}); |
| 31 dp.Target.onReceivedMessageFromTarget(messageObject => { |
| 32 var message = JSON.parse(messageObject.params.message); |
| 33 if (message.id === savedWorkerRequestId) { |
| 34 var value = message.result.result.value; |
| 35 testRunner.log('Successfully evaluated, result: ' + value); |
| 36 testRunner.completeTest(); |
| 37 } |
| 38 }); |
| 39 }) |
OLD | NEW |