| <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 lastResourceId = 0; |
| |
| NetworkAgent.getResponseBody = function(requestId, callback) |
| { |
| callback(undefined, mockContentsMap[requestId], false); |
| } |
| |
| PageAgent.getResourceContent = function(frameId, url, callback) |
| { |
| callback(undefined, mockContentsMap[url], 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(null, url, documentURL, frameId, loaderId, type, mimeType); |
| mockContentsMap[url] = content; |
| WebInspector.resourceTreeModel.dispatchEventToListeners(WebInspector.ResourceTreeModel.EventTypes.ResourceAdded, resource); |
| |
| return resource; |
| } |
| |
| function finishResource(resource) |
| { |
| resource.request.finished = true; |
| resource.request.dispatchEventToListeners(WebInspector.NetworkRequest.Events.FinishedLoading, resource.request); |
| } |
| |
| function createNetworkUISourceCodeProvider() |
| { |
| InspectorTest.createWorkspace(); |
| WebInspector.resourceTreeModel = new WebInspector.Object(); |
| var networkUISourceCodeProvider = new WebInspector.NetworkUISourceCodeProvider(InspectorTest.testNetworkWorkspaceProvider, InspectorTest.testWorkspace); |
| return networkUISourceCodeProvider; |
| } |
| |
| InspectorTest.runTestSuite([ |
| function testDocumentResource(next) |
| { |
| var networkUISourceCodeProvider = createNetworkUISourceCodeProvider(); |
| InspectorTest.addResult("Creating resource."); |
| InspectorTest.waitForWorkspaceUISourceCodeAddedEvent(uiSourceCodeAdded); |
| var resource = createResourceMock(WebInspector.resourceTypes.Document, "<document resource content>"); |
| |
| function uiSourceCodeAdded(uiSourceCode) |
| { |
| InspectorTest.dumpUISourceCode(uiSourceCode, next); |
| } |
| }, |
| |
| function testScriptResource(next) |
| { |
| var networkUISourceCodeProvider = createNetworkUISourceCodeProvider(); |
| InspectorTest.addResult("Creating resource."); |
| InspectorTest.waitForWorkspaceUISourceCodeAddedEvent(uiSourceCodeAdded); |
| var resource = createResourceMock(WebInspector.resourceTypes.Script, "<script resource content>"); |
| |
| function uiSourceCodeAdded(uiSourceCode) |
| { |
| InspectorTest.dumpUISourceCode(uiSourceCode, next); |
| } |
| }, |
| |
| function testStylesheetResource(next) |
| { |
| var networkUISourceCodeProvider = createNetworkUISourceCodeProvider(); |
| InspectorTest.addResult("Creating resource."); |
| InspectorTest.waitForWorkspaceUISourceCodeAddedEvent(uiSourceCodeAdded); |
| var resource = createResourceMock(WebInspector.resourceTypes.Stylesheet, "<stylesheet resource content>"); |
| |
| function uiSourceCodeAdded(uiSourceCode) |
| { |
| InspectorTest.dumpUISourceCode(uiSourceCode, next); |
| } |
| }, |
| ]); |
| }; |
| </script> |
| </head> |
| <body onload="runTest()"> |
| <p>Tests NetworkUISourceCodeProvider class.</p> |
| </body> |
| </html> |