diff options
Diffstat (limited to 'deps/v8/test/inspector/debugger/step-into-next-script.js')
-rw-r--r-- | deps/v8/test/inspector/debugger/step-into-next-script.js | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/deps/v8/test/inspector/debugger/step-into-next-script.js b/deps/v8/test/inspector/debugger/step-into-next-script.js new file mode 100644 index 0000000000..b51ce012d8 --- /dev/null +++ b/deps/v8/test/inspector/debugger/step-into-next-script.js @@ -0,0 +1,51 @@ +// Copyright 2017 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +print('Debugger breaks in next script after stepOut from previous one.'); + +InspectorTest.addScript(` +function test() { + setTimeout('var a = 1;//# sourceURL=timeout1.js', 0); + setTimeout(foo, 0); + setTimeout('var a = 3;//# sourceURL=timeout3.js', 0); + debugger; +} +//# sourceURL=foo.js`, 7, 26); + +InspectorTest.addScript(` +function foo() { + return 42; +} +//# sourceURL=timeout2.js`) + +InspectorTest.setupScriptMap(); +var stepAction; +Protocol.Debugger.onPaused(message => { + InspectorTest.logCallFrames(message.params.callFrames); + InspectorTest.log(''); + Protocol.Debugger[stepAction](); +}); +Protocol.Debugger.enable() +InspectorTest.runTestSuite([ + function testStepOut(next) { + stepAction = 'stepOut'; + Protocol.Runtime.evaluate({ expression: 'test()' }) + .then(() => InspectorTest.waitPendingTasks()) + .then(next); + }, + + function testStepOver(next) { + stepAction = 'stepOver'; + Protocol.Runtime.evaluate({ expression: 'test()' }) + .then(() => InspectorTest.waitPendingTasks()) + .then(next); + }, + + function testStepInto(next) { + stepAction = 'stepInto'; + Protocol.Runtime.evaluate({ expression: 'test()' }) + .then(() => InspectorTest.waitPendingTasks()) + .then(next); + } +]); |