Move parseFontFaceDescriptor to CSSPropertyParser.cpp
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / http / tests / inspector / workspace-test.js
blobdd4c5e1688e95094ece59dcd09c949b408031892
1 var initialize_WorkspaceTest = function() {
3 InspectorTest.createWorkspace = function(ignoreEvents)
5 WebInspector.settings.createSetting("fileSystemMapping", {}).set({});
6 InspectorTest.testFileSystemMapping = new WebInspector.FileSystemMapping();
7 InspectorTest.testExcludedFolderManager = new WebInspector.ExcludedFolderManager();
8 InspectorTest.testFileSystemMapping._fileSystemMappingSetting = new InspectorTest.MockSetting({});
9 InspectorTest.testFileSystemMapping._excludedFoldersSetting = new InspectorTest.MockSetting({});
11 InspectorTest.testTargetManager = new WebInspector.TargetManager();
12 InspectorTest.testWorkspace = new WebInspector.Workspace(InspectorTest.testFileSystemMapping);
13 InspectorTest.testNetworkMapping = new WebInspector.NetworkMapping(InspectorTest.testWorkspace, InspectorTest.testFileSystemMapping);
14 InspectorTest.testNetworkProjectManager = new WebInspector.NetworkProjectManager(InspectorTest.testTargetManager, InspectorTest.testWorkspace, InspectorTest.testNetworkMapping);
15 InspectorTest.testDebuggerWorkspaceBinding = new WebInspector.DebuggerWorkspaceBinding(InspectorTest.testTargetManager, InspectorTest.testWorkspace, InspectorTest.testNetworkMapping);
16 InspectorTest.testCSSWorkspaceBinding = new WebInspector.CSSWorkspaceBinding(InspectorTest.testTargetManager, InspectorTest.testWorkspace, InspectorTest.testNetworkMapping);
18 InspectorTest.testTargetManager.observeTargets({
19 targetAdded: function(target)
21 InspectorTest.testNetworkProject = WebInspector.NetworkProject.forTarget(target);
24 targetRemoved: function(target)
27 });
29 if (ignoreEvents)
30 return;
31 InspectorTest.testWorkspace.addEventListener(WebInspector.Workspace.Events.UISourceCodeAdded, InspectorTest._defaultWorkspaceEventHandler);
32 InspectorTest.testWorkspace.addEventListener(WebInspector.Workspace.Events.UISourceCodeRemoved, InspectorTest._defaultWorkspaceEventHandler);
35 InspectorTest._mockTargetId = 1;
37 InspectorTest.createMockTarget = function(id, debuggerModelConstructor)
39 var MockTarget = function(name, connection, callback)
41 WebInspector.Target.call(this, name, WebInspector.Target.Type.Page, connection, null, callback);
42 this.debuggerModel = debuggerModelConstructor ? new debuggerModelConstructor(this) : new WebInspector.DebuggerModel(this);
43 this.resourceTreeModel = WebInspector.targetManager.mainTarget().resourceTreeModel;
44 this.domModel = new WebInspector.DOMModel(this);
45 this.cssModel = new WebInspector.CSSStyleModel(this);
46 this.runtimeModel = new WebInspector.RuntimeModel(this);
47 this.consoleModel = new WebInspector.ConsoleModel(this);
50 MockTarget.prototype = {
51 _loadedWithCapabilities: function()
55 __proto__: WebInspector.Target.prototype
58 var target = new MockTarget("mock-target-" + id, new InspectorBackendClass.StubConnection());
59 InspectorTest.testTargetManager.addTarget(target);
60 return target;
63 InspectorTest.createWorkspaceWithTarget = function(ignoreEvents)
65 InspectorTest.createWorkspace(ignoreEvents);
66 var target = InspectorTest.createMockTarget(InspectorTest._mockTargetId++);
67 return target;
70 InspectorTest.waitForWorkspaceUISourceCodeAddedEvent = function(callback, count, projectType)
72 InspectorTest.uiSourceCodeAddedEventsLeft = count || 1;
73 InspectorTest.testWorkspace.removeEventListener(WebInspector.Workspace.Events.UISourceCodeAdded, InspectorTest._defaultWorkspaceEventHandler);
74 InspectorTest.testWorkspace.addEventListener(WebInspector.Workspace.Events.UISourceCodeAdded, uiSourceCodeAdded);
76 function uiSourceCodeAdded(event)
78 if (projectType && event.data.project().type() !== projectType)
79 return;
80 if (!projectType && event.data.project().type() === WebInspector.projectTypes.Service)
81 return;
82 if (!(--InspectorTest.uiSourceCodeAddedEventsLeft)) {
83 InspectorTest.testWorkspace.removeEventListener(WebInspector.Workspace.Events.UISourceCodeAdded, uiSourceCodeAdded);
84 InspectorTest.testWorkspace.addEventListener(WebInspector.Workspace.Events.UISourceCodeAdded, InspectorTest._defaultWorkspaceEventHandler);
86 callback(event.data);
90 InspectorTest.waitForWorkspaceUISourceCodeRemovedEvent = function(callback, count)
92 InspectorTest.uiSourceCodeRemovedEventsLeft = count || 1;
93 InspectorTest.testWorkspace.removeEventListener(WebInspector.Workspace.Events.UISourceCodeRemoved, InspectorTest._defaultWorkspaceEventHandler);
94 InspectorTest.testWorkspace.addEventListener(WebInspector.Workspace.Events.UISourceCodeRemoved, uiSourceCodeRemoved);
96 function uiSourceCodeRemoved(event)
98 if (event.data.project().type() === WebInspector.projectTypes.Service)
99 return;
100 if (!(--InspectorTest.uiSourceCodeRemovedEventsLeft)) {
101 InspectorTest.testWorkspace.removeEventListener(WebInspector.Workspace.Events.UISourceCodeRemoved, uiSourceCodeRemoved);
102 InspectorTest.testWorkspace.addEventListener(WebInspector.Workspace.Events.UISourceCodeRemoved, InspectorTest._defaultWorkspaceEventHandler);
104 callback(event.data);
108 InspectorTest.addMockUISourceCodeToWorkspace = function(url, type, content)
110 var mockContentProvider = new WebInspector.StaticContentProvider(type, content);
111 InspectorTest.testNetworkProject.addFileForURL(url, mockContentProvider);
114 InspectorTest._defaultWorkspaceEventHandler = function(event)
116 var uiSourceCode = event.data;
117 var networkURL = WebInspector.networkMapping.networkURL(uiSourceCode);
118 if (uiSourceCode.project().type() === WebInspector.projectTypes.Debugger && !networkURL)
119 return;
120 if (uiSourceCode.project().type() === WebInspector.projectTypes.Service)
121 return;
122 InspectorTest.addResult("Workspace event: " + event.type + ": " + uiSourceCode.uri() + ".");
125 InspectorTest.uiSourceCodeURL = function(uiSourceCode)
127 return uiSourceCode.originURL().replace(/.*LayoutTests/, "LayoutTests");
130 InspectorTest.dumpUISourceCode = function(uiSourceCode, callback)
132 InspectorTest.addResult("UISourceCode: " + InspectorTest.uiSourceCodeURL(uiSourceCode));
133 if (uiSourceCode.contentType() === WebInspector.resourceTypes.Script || uiSourceCode.contentType() === WebInspector.resourceTypes.Document)
134 InspectorTest.addResult("UISourceCode is content script: " + (uiSourceCode.project().type() === WebInspector.projectTypes.ContentScripts));
135 uiSourceCode.requestContent(didRequestContent);
137 function didRequestContent(content, contentEncoded)
139 InspectorTest.addResult("Highlighter type: " + WebInspector.SourcesView.uiSourceCodeHighlighterType(uiSourceCode));
140 InspectorTest.addResult("UISourceCode content: " + content);
141 callback();
145 InspectorTest.fileSystemUISourceCodes = function()
147 var uiSourceCodes = [];
148 var fileSystemProjects = WebInspector.workspace.projectsForType(WebInspector.projectTypes.FileSystem);
149 for (var project of fileSystemProjects)
150 uiSourceCodes = uiSourceCodes.concat(project.uiSourceCodes());
151 return uiSourceCodes;
154 InspectorTest.refreshFileSystemProjects = function(callback)
156 var barrier = new CallbackBarrier();
157 var projects = WebInspector.workspace.projects();
158 for (var i = 0; i < projects.length; ++i)
159 projects[i].refresh("/", barrier.createCallback());
160 barrier.callWhenDone(callback);
163 InspectorTest.waitForGivenUISourceCode = function(name, callback)
165 var uiSourceCodes = WebInspector.workspace.uiSourceCodes();
166 for (var i = 0; i < uiSourceCodes.length; ++i) {
167 if (uiSourceCodes[i].name() === name) {
168 setImmediate(callback);
169 return;
172 WebInspector.workspace.addEventListener(WebInspector.Workspace.Events.UISourceCodeAdded, uiSourceCodeAdded);
174 function uiSourceCodeAdded(event)
176 if (event.data.name() === name) {
177 WebInspector.workspace.removeEventListener(WebInspector.Workspace.Events.UISourceCodeAdded, uiSourceCodeAdded);
178 setImmediate(callback);