| // Copyright 2017 The Chromium Authors. All |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| /** |
| * @fileoverview using private properties isn't a Closure violation in tests. |
| * @suppress {accessControls} |
| */ |
| |
| ApplicationTestRunner.dumpResources = function(formatter) { |
| const results = []; |
| |
| function formatterWrapper(resource) { |
| if (formatter) { |
| results.push({resource: resource, text: formatter(resource)}); |
| } else { |
| results.push({resource: resource, text: resource.url}); |
| } |
| } |
| |
| TestRunner.resourceTreeModel.forAllResources(formatterWrapper); |
| |
| function comparator(result1, result2) { |
| return result1.resource.url.localeCompare(result2.resource.url); |
| } |
| |
| results.sort(comparator); |
| |
| for (let i = 0; i < results.length; ++i) { |
| TestRunner.addResult(results[i].text); |
| } |
| }; |
| |
| ApplicationTestRunner.dumpResourcesURLMap = function() { |
| const results = []; |
| TestRunner.resourceTreeModel.forAllResources(collect); |
| |
| function collect(resource) { |
| results.push({url: resource.url, resource: TestRunner.resourceTreeModel.resourceForURL(resource.url)}); |
| } |
| |
| function comparator(result1, result2) { |
| if (result1.url > result2.url) { |
| return 1; |
| } |
| |
| if (result2.url > result1.url) { |
| return -1; |
| } |
| |
| return 0; |
| } |
| |
| results.sort(comparator); |
| |
| for (let i = 0; i < results.length; ++i) { |
| TestRunner.addResult(results[i].url + ' == ' + results[i].resource.url); |
| } |
| }; |
| |
| ApplicationTestRunner.dumpResourcesTree = function() { |
| function dump(treeItem, prefix) { |
| if (typeof treeItem._resetBubble === 'function') { |
| treeItem._resetBubble(); |
| } |
| |
| TestRunner.addResult(prefix + treeItem.listItemElement.textContent); |
| treeItem.expand(); |
| const children = treeItem.children(); |
| |
| for (let i = 0; children && i < children.length; ++i) { |
| dump(children[i], prefix + ' '); |
| } |
| } |
| |
| dump(UI.panels.resources._sidebar._resourcesSection._treeElement, ''); |
| |
| if (!ApplicationTestRunner._testSourceNavigator) { |
| ApplicationTestRunner._testSourceNavigator = new Sources.NetworkNavigatorView(); |
| ApplicationTestRunner._testSourceNavigator.show(UI.inspectorView.element); |
| } |
| |
| SourcesTestRunner.dumpNavigatorViewInAllModes(ApplicationTestRunner._testSourceNavigator); |
| }; |
| |
| ApplicationTestRunner.dumpResourceTreeEverything = function() { |
| function format(resource) { |
| return resource.resourceType().name() + ' ' + resource.url; |
| } |
| |
| TestRunner.addResult('Resources:'); |
| ApplicationTestRunner.dumpResources(format); |
| TestRunner.addResult(''); |
| TestRunner.addResult('Resources URL Map:'); |
| ApplicationTestRunner.dumpResourcesURLMap(); |
| TestRunner.addResult(''); |
| TestRunner.addResult('Resources Tree:'); |
| ApplicationTestRunner.dumpResourcesTree(); |
| }; |