3 <script src="../../http/tests/inspector/inspector-test.js"></script>
4 <script src="../../http/tests/inspector/debugger-test.js"></script>
5 <script src="../../http/tests/inspector/workspace-test.js"></script>
10 WebInspector.showPanel("sources");
11 InspectorTest.createWorkspace(true);
12 var panel = new WebInspector.SourcesPanel(InspectorTest.testWorkspace);
13 var navigator = panel._navigator;
15 var uiSourceCodes = [];
16 function addUISourceCode(url, isContentScript)
18 var contentProvider = new WebInspector.StaticContentProvider(WebInspector.resourceTypes.Script, "");
19 var uiSourceCode = InspectorTest.testNetworkWorkspaceProvider.addFileForURL(url, contentProvider, false, isContentScript);
20 uiSourceCodes.push(uiSourceCode);
23 function dumpNavigator()
25 InspectorTest.dumpScriptsNavigator(navigator, " ");
28 function expandDomains(tree)
30 var children = navigator._sourcesView._scriptsTree.children;
31 for (var i = 0; i < children.length; ++i)
35 var rootURL = "http://localhost:8080/LayoutTests/inspector/debugger/";
36 InspectorTest.addResult("Adding first resource:");
37 addUISourceCode(rootURL + "foo/bar/script.js", false);
39 InspectorTest.addResult("Expanding domains:");
40 expandDomains(navigator._sourcesView._scriptsTree);
42 InspectorTest.addResult("Adding second resource:");
43 addUISourceCode(rootURL + "foo/bar/script.js?a=2", false);
45 InspectorTest.addResult("Adding other resources:");
46 addUISourceCode(rootURL + "foo/bar/script.js?a=1", false);
47 addUISourceCode(rootURL + "foo/baz/script.js", false);
50 InspectorTest.addResult("Adding content scripts and some random resources:");
51 addUISourceCode(rootURL + "foo/bar/contentScript2.js?a=1", true);
52 addUISourceCode(rootURL + "foo/bar/contentScript.js?a=2", true);
53 addUISourceCode(rootURL + "foo/bar/contentScript.js?a=1", true);
54 addUISourceCode("http://example.com/", false);
55 addUISourceCode("http://example.com/?a=b", false);
56 addUISourceCode("?a=b", false);
57 addUISourceCode("very_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_url", false);
60 InspectorTest.addResult("Revealing first resource:");
61 navigator.revealUISourceCode(uiSourceCodes[0]);
64 // Here we keep http://localhost:8080/LayoutTests/inspector/debugger2/ folder collapsed while adding resources into it.
65 InspectorTest.addResult("Adding some resources to change the way debugger folder looks like, first:");
66 var rootURL2 = "http://localhost:8080/LayoutTests/inspector/debugger2/";
67 addUISourceCode(rootURL2 + "foo/bar/script.js", false);
70 InspectorTest.addResult("Second:");
71 addUISourceCode(rootURL2 + "foo/bar/script.js?a=2", false);
73 InspectorTest.addResult("Others:");
74 addUISourceCode(rootURL2 + "foo/bar/script.js?a=1", false);
75 addUISourceCode(rootURL2 + "foo/baz/script.js", false);
78 var rootURL3 = "http://localhost:8080/LayoutTests/inspector/debugger3/";
79 addUISourceCode(rootURL3 + "hasOwnProperty/__proto__/constructor/foo.js", false);
80 addUISourceCode(rootURL3 + "hasOwnProperty/__proto__/foo.js", false);
81 addUISourceCode(rootURL3 + "hasOwnProperty/foo.js", false);
84 InspectorTest.addResult("Revealing all resources:");
85 for (var i = 0; i < uiSourceCodes.length; ++i)
86 navigator.revealUISourceCode(uiSourceCodes[i]);
89 InspectorTest.addResult("Removing all resources:");
90 for (var i = 0; i < uiSourceCodes.length; ++i)
91 navigator.removeUISourceCode(uiSourceCodes[i]);
94 InspectorTest.completeTest();
99 <body onload="runTest()">
101 Tests scripts panel file selectors.