Index: LayoutTests/dart/inspector/deferred-import.html |
diff --git a/LayoutTests/dart/inspector/deferred-import.html b/LayoutTests/dart/inspector/deferred-import.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..8777ea8ef8a3a0eb73030dd0e8a0ff7e81c8670d |
--- /dev/null |
+++ b/LayoutTests/dart/inspector/deferred-import.html |
@@ -0,0 +1,56 @@ |
+<html> |
+<script src="../../http/tests/inspector/inspector-test.js"></script> |
+<script src="../../http/tests/inspector/debugger-test.js"></script> |
+ |
+<script type="application/dart" src="deferred-import.dart"></script> |
+ |
+<script> |
+ |
+function postMessageToDart() |
+{ |
+ window.postMessage('fromJS', '*'); |
+} |
+ |
+function testFunction() { |
+ postMessageToDart(); |
+} |
+ |
+function test() |
+{ |
+ var panel = WebInspector.inspectorView.showPanel("sources"); |
+ InspectorTest.runDebuggerTestSuite([ |
+ function testScopeChain(next) |
+ { |
+ // Intentionally end this script name with .DART instead of .dart |
+ // to verify that breakpoints set by url regex still are treated |
+ // as dart even if the regexp and script url do not end in .dart. |
+ InspectorTest.showScriptSource('deferred-import.dart', didShowScriptSource); |
+ |
+ function didShowScriptSource(sourceFrame) |
+ { |
+ // Break within the body of the closure method. |
+ setBreakpointAndWaitUntilPaused('deferred-import-library.dart', 4, didPauseInDart); |
+ InspectorTest.runTestFunction(); |
+ InspectorTest.waitUntilPaused(didPauseInDart); |
+ } |
+ |
+ function didPauseInDart(callFrames) |
+ { |
+ InspectorTest.captureStackTrace(callFrames.slice(0, 1)); |
+ next(); |
+ } |
+ }, |
+ ]); |
+ |
+ function setBreakpointAndWaitUntilPaused(urlRegex, lineNumber, pausedCallback) |
+ { |
+ var expectedBreakpointId; |
+ WebInspector.debuggerModel._agent.setBreakpointByUrl(lineNumber, undefined, urlRegex, 0, "", undefined, "dart", undefined); |
+ } |
+}; |
+</script> |
+ |
+<body onload="runTest()"> |
+<div id="sample_text_id"></div> |
+</body> |
+</html> |