3 <script src="../../../http/tests/inspector/inspector-test.js"></script>
4 <script src="../../../http/tests/inspector/console-test.js"></script>
10 return window.foo || result;
15 var jumpToMeLineNumber = 7;
17 var panel = WebInspector.inspectorView.showPanel("sources");
18 InspectorTest.addSniffer(panel, "showUISourceCode", showUISourceCodeHook);
19 WebInspector.context.flavor(WebInspector.ExecutionContext).evaluate("jumpToMe", "", false, true, false, false, didGetFunction);
21 function didGetFunction(funcObject, wasThrown)
23 var error = !funcObject || wasThrown;
24 InspectorTest.assertTrue(!error);
25 panel._showFunctionDefinition(funcObject);
28 function showUISourceCodeHook(uiSourceCode, lineNumber, columnNumber, forceShowInPanel)
30 // lineNumber and columnNumber are 0-based
33 InspectorTest.assertEquals(jumpToMeLineNumber, lineNumber);
34 InspectorTest.addResult("Jumping to " + lineNumber + ":" + columnNumber);
36 InspectorTest.waitUntilNthMessageReceived(2, onConsoleMessagesReceived);
37 WebInspector.ConsoleModel.evaluateCommandInConsole(WebInspector.context.flavor(WebInspector.ExecutionContext), "jumpToMe");
40 function onConsoleMessagesReceived()
43 InspectorTest.disableConsoleViewport();
44 var viewMessages = WebInspector.ConsolePanel._view()._visibleViewMessages;
45 for (var i = 0; i < viewMessages.length; ++i) {
46 var uiMessage = viewMessages[i];
47 var element = uiMessage.contentElement();
48 messages.push(element.textContent);
51 var text = messages.join("\n");
52 if (text.indexOf("show-function-definition.html:" + jumpToMeLineNumber) !== -1)
53 InspectorTest.addResult("PASS: Console message has correct line number");
55 InspectorTest.addResult("FAIL: Wrong line number in console message:\n" + text);
57 InspectorTest.completeTest();
64 <body onload="runTest()">
66 Tests that "Show Function Definition" jumps to the correct location.