Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Unified Diff: LayoutTests/inspector/sources/debugger/network-uisourcecode-provider.html

Issue 1240373002: Revert of [DevTools] Remove edited scripts from debugger agent, move knowledge to frontend. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: LayoutTests/inspector/sources/debugger/network-uisourcecode-provider.html
diff --git a/LayoutTests/inspector/sources/debugger/network-uisourcecode-provider.html b/LayoutTests/inspector/sources/debugger/network-uisourcecode-provider.html
new file mode 100644
index 0000000000000000000000000000000000000000..2245fff335270b5cdcd7ef9f0c7f2d6fae740014
--- /dev/null
+++ b/LayoutTests/inspector/sources/debugger/network-uisourcecode-provider.html
@@ -0,0 +1,167 @@
+<html>
+<head>
+<script src="../../../http/tests/inspector/inspector-test.js"></script>
+<script src="../../../http/tests/inspector/debugger-test.js"></script>
+<script src="../../../http/tests/inspector/workspace-test.js"></script>
+<script>
+function test()
+{
+ var mockContentsMap = {};
+ var target;
+ var lastResourceId = 0;
+ var lastStyleSheetId = 0;
+
+ InspectorTest._defaultWorkspaceEventHandler = function() {}
+
+ function createMockStyleSheetHeader(url)
+ {
+ return {
+ styleSheetId: (++lastStyleSheetId) + "",
+ sourceURL: url,
+ sourceMapURL: "",
+ origin: "regular",
+ title: "",
+ disabled: false
+ };
+ }
+
+ function createResourceMock(type, content)
+ {
+ var documentURL = "http://fake.url";
+ var resourceId = ++lastResourceId + "";
+ var url = documentURL + "/" + resourceId;
+ var frameId = "frame-id";
+ var loaderId = "loader-id";
+ var mimeType;
+ switch (type) {
+ case WebInspector.resourceTypes.Document:
+ mimeType = "text/html";
+ break;
+ case WebInspector.resourceTypes.Script:
+ mimeType = "text/javascript";
+ break;
+ case WebInspector.resourceTypes.Stylesheet:
+ mimeType = "text/css";
+ break;
+ }
+
+ var resource = new WebInspector.Resource(target, null, url, documentURL, frameId, loaderId, type, mimeType);
+ resource._content = content;
+ target.resourceTreeModel.dispatchEventToListeners(WebInspector.ResourceTreeModel.EventTypes.ResourceAdded, resource);
+
+ return resource;
+ }
+
+ function createScriptMock(content)
+ {
+ var documentURL = "http://fake.url";
+ var resourceId = ++lastResourceId + "";
+ var url = documentURL + "/" + resourceId;
+ var script = InspectorTest.createScriptMock(url, 0, 0, false, content, target);
+ target.debuggerModel.dispatchEventToListeners(WebInspector.DebuggerModel.Events.ParsedScriptSource, script);
+ }
+
+ function finishResource(resource)
+ {
+ resource.request.finished = true;
+ resource.request.dispatchEventToListeners(WebInspector.NetworkRequest.Events.FinishedLoading, resource.request);
+ }
+
+ function createNetworkUISourceCodeProvider()
+ {
+ target = InspectorTest.createWorkspaceWithTarget(true);
+ }
+
+ InspectorTest.runTestSuite([
+ function testDocumentResource(next)
+ {
+ createNetworkUISourceCodeProvider();
+ InspectorTest.addResult("Creating resource.");
+ InspectorTest.waitForWorkspaceUISourceCodeAddedEvent(uiSourceCodeAdded);
+ createResourceMock(WebInspector.resourceTypes.Document, "<document resource content>");
+
+ function uiSourceCodeAdded(uiSourceCode)
+ {
+ // setTimeouts are necessary since same event finalizes uiSourceCode creation.
+ setTimeout(function() { InspectorTest.dumpUISourceCode(uiSourceCode, next); });
+ }
+ },
+
+ function testScriptResource(next)
+ {
+ createNetworkUISourceCodeProvider();
+ InspectorTest.addResult("Creating resource.");
+ InspectorTest.waitForWorkspaceUISourceCodeAddedEvent(uiSourceCodeAdded);
+ createResourceMock(WebInspector.resourceTypes.Script, "<script resource content>");
+
+ function uiSourceCodeAdded(uiSourceCode)
+ {
+ setTimeout(function() { InspectorTest.dumpUISourceCode(uiSourceCode, next); });
+ }
+ },
+
+ function testVMScript(next)
+ {
+ createNetworkUISourceCodeProvider();
+ InspectorTest.addResult("Creating script.");
+ InspectorTest.waitForWorkspaceUISourceCodeAddedEvent(uiSourceCodeAdded);
+ createScriptMock("<script content>");
+
+ function uiSourceCodeAdded(uiSourceCode)
+ {
+ setTimeout(function() { InspectorTest.dumpUISourceCode(uiSourceCode, next); });
+ }
+ },
+
+ function testStylesheetResource(next)
+ {
+ createNetworkUISourceCodeProvider();
+ InspectorTest.addResult("Creating resource.");
+ InspectorTest.waitForWorkspaceUISourceCodeAddedEvent(uiSourceCodeAdded);
+ createResourceMock(WebInspector.resourceTypes.Stylesheet, "<stylesheet resource content>");
+
+ function uiSourceCodeAdded(uiSourceCode)
+ {
+ setTimeout(function() { InspectorTest.dumpUISourceCode(uiSourceCode, next); });
+ }
+ },
+
+ function testRemoveStyleSheetFromModelWithComplexURL(next)
+ {
+ var mockStyleSheetHeader = createMockStyleSheetHeader("http://example.com/foo.css");
+ testRemoveStyleSheetFromModel(mockStyleSheetHeader, next);
+ },
+
+ function testRemoveStyleSheetFromModelWithSimpleURL(next)
+ {
+ var mockStyleSheetHeader = createMockStyleSheetHeader("foo.css");
+ testRemoveStyleSheetFromModel(mockStyleSheetHeader, next);
+ }
+ ]);
+
+ function testRemoveStyleSheetFromModel(mockStyleSheetHeader, callback)
+ {
+ createNetworkUISourceCodeProvider();
+ InspectorTest.waitForWorkspaceUISourceCodeAddedEvent(uiSourceCodeAdded);
+ WebInspector.CSSStyleModel.fromTarget(target)._styleSheetAdded(mockStyleSheetHeader);
+
+ function uiSourceCodeAdded(uiSourceCode)
+ {
+ InspectorTest.addResult("Added uiSourceCode: " + InspectorTest.uiSourceCodeURL(uiSourceCode));
+ InspectorTest.waitForWorkspaceUISourceCodeRemovedEvent(uiSourceCodeRemoved);
+ WebInspector.CSSStyleModel.fromTarget(target)._styleSheetRemoved(mockStyleSheetHeader.styleSheetId);
+ }
+
+ function uiSourceCodeRemoved(uiSourceCode)
+ {
+ InspectorTest.addResult("Removed uiSourceCode: " + InspectorTest.uiSourceCodeURL(uiSourceCode));
+ callback();
+ }
+ }
+};
+</script>
+</head>
+<body onload="runTest()">
+<p>Tests NetworkUISourceCodeProvider class.</p>
+</body>
+</html>

Powered by Google App Engine
This is Rietveld 408576698