Chromium Code Reviews| Index: LayoutTests/inspector/sources/debugger/multi-target-breakpoint-manager.html |
| diff --git a/LayoutTests/inspector/sources/debugger/multi-target-breakpoint-manager.html b/LayoutTests/inspector/sources/debugger/multi-target-breakpoint-manager.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..a853f41b38c552a3908816f33bb3f9365ededb84 |
| --- /dev/null |
| +++ b/LayoutTests/inspector/sources/debugger/multi-target-breakpoint-manager.html |
| @@ -0,0 +1,89 @@ |
| +<html> |
| +<head> |
| +<script src="../../../http/tests/inspector/inspector-test.js"></script> |
| +<script src="breakpoint-manager.js"></script> |
| + |
| +<script> |
| + |
| +function test() |
| +{ |
| + InspectorTest.dumpTargetIds = true; |
| + InspectorTest.setupLiveLocationSniffers(); |
| + |
| + |
| + InspectorTest.runTestSuite([ |
| + |
| + function testResolvedBreakpointInBothTarget(next) |
| + { |
| + var targetManager = new WebInspector.TargetManager(); |
| + var target1 = InspectorTest.createMockTarget(targetManager, 1); |
| + targetManager._targets.push(target1); |
| + var breakpointManager = InspectorTest.createBreakpointManager(targetManager); |
| + var uiSourceCode = InspectorTest.addUISourceCode(target1, breakpointManager, "a.js"); |
| + var target2; |
| + InspectorTest.setBreakpoint(breakpointManager, uiSourceCode, 30, 0, "", true, step1); |
| + |
| + function step1() |
| + { |
| + target1.debuggerModel._breakpointResolved("a.js:30", new WebInspector.DebuggerModel.Location(target1, "a.js", 131, 5)); |
| + InspectorTest.dumpBreakpointLocations(breakpointManager); |
| + InspectorTest.addResult(" Second target intruded!"); |
|
vsevik
2014/06/16 11:12:35
added.
sergeyv
2014/06/16 11:21:45
Done.
|
| + target2 = InspectorTest.createMockTarget(targetManager, 2); |
| + new InspectorTest.DebuggerModelMock(target2, target2.defaultMapping); |
| + targetManager.addTarget(target2); |
| + target2.debuggerModel._addScript("a.js", "a.js"); |
| + uiSourceCode.setSourceMappingForTarget(target2, target2.defaultMapping); |
| + window.setBreakpointCallback = step2; |
| + } |
| + |
| + function step2() |
| + { |
| + target2.debuggerModel._breakpointResolved("a.js:30", new WebInspector.DebuggerModel.Location(target2, "a.js", 30, 5)); |
| + InspectorTest.dumpBreakpointLocations(breakpointManager); |
| + InspectorTest.addResult(" First target escaped!") |
|
vsevik
2014/06/16 11:12:35
removed.
sergeyv
2014/06/16 11:21:45
Done.
|
| + targetManager.removeTarget(target1); |
|
vsevik
2014/06/16 11:12:35
Let's also remove the second one then.
sergeyv
2014/06/16 11:21:44
Done.
|
| + InspectorTest.dumpBreakpointLocations(breakpointManager); |
| + InspectorTest.finishBreakpointTest(breakpointManager, next) |
| + } |
| + |
| + }, |
| + |
| + function testResolvedBreakpointInOneTarget(next) |
| + { |
| + var targetManager = new WebInspector.TargetManager(); |
| + var target1 = InspectorTest.createMockTarget(targetManager, 1); |
| + var target2 = InspectorTest.createMockTarget(targetManager, 2); |
| + |
| + targetManager._targets.push(target1); |
| + targetManager._targets.push(target2); |
| + var breakpointManager = InspectorTest.createBreakpointManager(targetManager); |
| + var uiSourceCode = InspectorTest.addUISourceCode(target1, breakpointManager, "a.js"); |
| + InspectorTest.setBreakpoint(breakpointManager, uiSourceCode, 30, 0, "", true, step1); |
| + |
| + function step1() |
| + { |
| + window.setBreakpointCallback = step2; |
| + } |
| + |
| + function step2() |
| + { |
| + InspectorTest.addResult(" First target escaped!") |
| + targetManager.removeTarget(target1); |
| + InspectorTest.dumpBreakpointLocations(breakpointManager); |
| + InspectorTest.finishBreakpointTest(breakpointManager, next); |
| + } |
| + |
| + }, |
| + |
| + ]); |
| +}; |
| + |
|
vsevik
2014/06/16 11:12:35
Can we also test debuggerModel disabling?
|
| +</script> |
| + |
| +</head> |
| + |
| +<body onload="runTest()"> |
| +<p>Tests BreakpointManager class.</p> |
| + |
| +</body> |
| +</html> |