OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 InspectorTest.log("Check that stepInto at then end of the script go to next user
script instead InjectedScriptSource.js."); | 5 InspectorTest.log('Check that stepInto at then end of the script go to next user
script instead InjectedScriptSource.js.'); |
6 | 6 |
7 InspectorTest.addScript( | 7 (async function test() { |
8 `function foo() | 8 InspectorTest.setupScriptMap(); |
9 { | 9 await Protocol.Debugger.enable(); |
10 return 239; | 10 Protocol.Runtime.evaluate({expression: '(function boo() { setTimeout(() => 239
, 0); debugger; })()\n'}); |
11 }`); | 11 await waitPauseAndDumpLocation(); |
| 12 Protocol.Debugger.stepInto(); |
| 13 await waitPauseAndDumpLocation(); |
| 14 Protocol.Debugger.stepInto(); |
| 15 await waitPauseAndDumpLocation(); |
| 16 Protocol.Debugger.stepInto(); |
| 17 await waitPauseAndDumpLocation(); |
| 18 await Protocol.Debugger.disable(); |
| 19 InspectorTest.completeTest(); |
| 20 })(); |
12 | 21 |
13 Protocol.Debugger.enable(); | 22 async function waitPauseAndDumpLocation() { |
14 Protocol.Debugger.onPaused(debuggerPaused); | 23 var message = await Protocol.Debugger.oncePaused(); |
15 Protocol.Runtime.evaluate({ "expression": "(function boo() { setTimeout(foo, 0);
debugger; })()" }); | 24 InspectorTest.log('paused at:'); |
16 | 25 InspectorTest.logSourceLocation(message.params.callFrames[0].location); |
17 var actions = [ "stepInto", "stepInto", "stepInto" ]; | 26 return message; |
18 function debuggerPaused(result) | |
19 { | |
20 InspectorTest.log("Stack trace:"); | |
21 for (var callFrame of result.params.callFrames) | |
22 InspectorTest.log(callFrame.functionName + ":" + callFrame.location.lineNumb
er + ":" + callFrame.location.columnNumber); | |
23 InspectorTest.log(""); | |
24 | |
25 var action = actions.shift(); | |
26 if (!action) { | |
27 Protocol.Debugger.resume().then(InspectorTest.completeTest); | |
28 return; | |
29 } | |
30 InspectorTest.log("Perform " + action); | |
31 Protocol.Debugger[action](); | |
32 } | 27 } |
OLD | NEW |