| Index: LayoutTests/inspector/sources/debugger/debugger-step-into-across-timeouts.html
|
| diff --git a/LayoutTests/inspector/sources/debugger/debugger-step-into-across-timeouts.html b/LayoutTests/inspector/sources/debugger/debugger-step-into-across-timeouts.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..2b1fb78587428a7c4d4648ba2449e95c3c75d99e
|
| --- /dev/null
|
| +++ b/LayoutTests/inspector/sources/debugger/debugger-step-into-across-timeouts.html
|
| @@ -0,0 +1,61 @@
|
| +<html>
|
| +<head>
|
| +<script src="../../../http/tests/inspector/inspector-test.js"></script>
|
| +<script src="../../../http/tests/inspector/debugger-test.js"></script>
|
| +<script>
|
| +
|
| +function testFunction()
|
| +{
|
| + setTimeout(callback1, 0);
|
| +}
|
| +
|
| +function callback1()
|
| +{
|
| + setTimeout(callback2, 0);
|
| + debugger;
|
| +}
|
| +
|
| +function callback2()
|
| +{
|
| + var dummy = 42; // Should pause here.
|
| + (function FAIL_Should_Not_Pause_Here() { debugger; })();
|
| +
|
| + if (window.testRunner)
|
| + testRunner.evaluateInWebInspector(0, "(InspectorTest.completeDebuggerTest())")
|
| +}
|
| +
|
| +var test = function()
|
| +{
|
| + InspectorTest.startDebuggerTest(step1, true);
|
| +
|
| + function step1()
|
| + {
|
| + InspectorTest.runTestFunctionAndWaitUntilPaused(step2);
|
| + }
|
| +
|
| + function step2()
|
| + {
|
| + var actions = [
|
| + "Print", // "debugger" in callback1
|
| + "StepInto",
|
| + "StepInto",
|
| + "Print",
|
| + ];
|
| + InspectorTest.waitUntilPausedAndPerformSteppingActions(actions, resume);
|
| + }
|
| +
|
| + function resume()
|
| + {
|
| + InspectorTest.resumeExecution(InspectorTest.waitUntilPaused.bind(InspectorTest, resume));
|
| + }
|
| +}
|
| +
|
| +</script>
|
| +</head>
|
| +
|
| +<body onload="runTest()">
|
| +<p>
|
| +Tests that debugger StepInto will stop inside next timeout handler.
|
| +</p>
|
| +</body>
|
| +</html>
|
|
|