Commit d5937f13 authored by Dmitry Gozman's avatar Dmitry Gozman Committed by Commit Bot

[DevTools] PageMock is always a main target now.

Bug: 775132
Change-Id: I95a91e28bd67343c1b26c719edd0aaffc9fe9179
Reviewed-on: https://chromium-review.googlesource.com/c/1321089
Commit-Queue: Andrey Lushnikov <lushnikov@chromium.org>
Reviewed-by: default avatarAndrey Lushnikov <lushnikov@chromium.org>
Cr-Commit-Position: refs/heads/master@{#605912}
parent 1eb0082a
......@@ -25,10 +25,8 @@
TestRunner.addResult('Source requested for ' + this.url());
}
Bindings.debuggerWorkspaceBinding._resetForTest(TestRunner.mainTarget);
Bindings.resourceMapping._resetForTest(TestRunner.mainTarget);
var page = new SDKTestRunner.PageMock('http://example.com');
SDKTestRunner.connectToPage('mock-page', page, true /* makeMainTarget */);
page.connectAsMainTarget('mock-page');
function addNetworkFile(url) {
page.evalScript(url, '', false /* isContentScript */);
......
......@@ -2,13 +2,31 @@ Tests scripts sorting in the scripts panel.
Sources:
-------- Setting mode: [frame]
mock-target-1
*Non*URL*path
bar.js?file=bar/zzz.js
bar.js?file=bar/zzz.js
block.js?block=foo
foo.js?file=bar/aaa.js
foo.js?file=bar/aaa.js
ga.js
jquery-1.5.1.min.js
jquery.cookie.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
motor.js?1308927432
top100.jcn?80674
xgemius.js
Sources:
-------- Setting mode: [frame/domain]
(no domain)
*Non*URL*path
bar.com
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
bar.js?file=bar/zzz.js
block.js?block=foo
foo.js?file=bar/aaa.js
foo.js?file=bar/aaa.js
ga.js
jquery-1.5.1.min.js
jquery.cookie.js
......@@ -18,144 +36,134 @@ mock-target-1
top100.jcn?80674
xgemius.js
Sources:
-------- Setting mode: [frame/domain]
mock-target-1
(no domain)
*Non*URL*path
bar.com
-------- Setting mode: [frame/domain/folder]
(no domain)
*Non*URL*path
bar.com
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
foo.com
_js/production
motor.js?1308927432
foo/path
bar.js?file=bar/zzz.js
block.js?block=foo
foo.js?file=bar/aaa.js
ga.js
jquery-1.5.1.min.js
jquery.cookie.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
motor.js?1308927432
top100.jcn?80674
i
js
jquery-1.5.1.min.js
jquery.cookie.js
xgemius.js
Sources:
-------- Setting mode: [frame/domain/folder]
mock-target-1
(no domain)
*Non*URL*path
bar.com
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
_js/production
motor.js?1308927432
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
i
js
jquery-1.5.1.min.js
jquery.cookie.js
xgemius.js
block.js?block=foo
ga.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
top100.jcn?80674
block.js?block=foo
ga.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
top100.jcn?80674
Sources:
-------- Setting mode: [domain]
mock-target-1
(no domain)
*Non*URL*path
bar.com
(no domain)
*Non*URL*path
bar.com
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
bar.js?file=bar/zzz.js
block.js?block=foo
foo.js?file=bar/aaa.js
ga.js
jquery-1.5.1.min.js
jquery.cookie.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
motor.js?1308927432
top100.jcn?80674
xgemius.js
Sources:
-------- Setting mode: [domain/folder]
(no domain)
*Non*URL*path
bar.com
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
foo.com
_js/production
motor.js?1308927432
foo/path
bar.js?file=bar/zzz.js
block.js?block=foo
foo.js?file=bar/aaa.js
ga.js
jquery-1.5.1.min.js
jquery.cookie.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
motor.js?1308927432
top100.jcn?80674
i
js
jquery-1.5.1.min.js
jquery.cookie.js
xgemius.js
Sources:
-------- Setting mode: [domain/folder]
mock-target-1
(no domain)
*Non*URL*path
bar.com
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
_js/production
motor.js?1308927432
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
i
js
jquery-1.5.1.min.js
jquery.cookie.js
xgemius.js
block.js?block=foo
ga.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
top100.jcn?80674
block.js?block=foo
ga.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
top100.jcn?80674
Content Scripts:
-------- Setting mode: [frame]
mock-target-1
*Another*Non*URL*path
bar.js
baz.js
Content Scripts:
-------- Setting mode: [frame/domain]
(no domain)
*Another*Non*URL*path
extension-name
bar.js
baz.js
Content Scripts:
-------- Setting mode: [frame/domain]
mock-target-1
(no domain)
*Another*Non*URL*path
extension-name
bar.js
baz.js
Content Scripts:
-------- Setting mode: [frame/domain/folder]
mock-target-1
(no domain)
*Another*Non*URL*path
extension-name
folder
baz.js
bar.js
(no domain)
*Another*Non*URL*path
extension-name
folder
baz.js
bar.js
Content Scripts:
-------- Setting mode: [domain]
mock-target-1
(no domain)
*Another*Non*URL*path
extension-name
bar.js
baz.js
(no domain)
*Another*Non*URL*path
extension-name
bar.js
baz.js
Content Scripts:
-------- Setting mode: [domain/folder]
mock-target-1
(no domain)
*Another*Non*URL*path
extension-name
folder
baz.js
bar.js
(no domain)
*Another*Non*URL*path
extension-name
folder
baz.js
bar.js
Sources:
-------- Setting mode: [frame]
mock-target-1
*Non*URL*path
bar.js?file=bar/zzz.js
bar.js?file=bar/zzz.js
block.js?block=foo
foo.js?file=bar/aaa.js
foo.js?file=bar/aaa.js
ga.js
jquery-1.5.1.min.js
jquery.cookie.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
motor.js?1308927432
top100.jcn?80674
xgemius.js
Sources:
-------- Setting mode: [frame/domain]
(no domain)
*Non*URL*path
bar.com
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
bar.js?file=bar/zzz.js
block.js?block=foo
foo.js?file=bar/aaa.js
foo.js?file=bar/aaa.js
ga.js
jquery-1.5.1.min.js
jquery.cookie.js
......@@ -165,133 +173,105 @@ mock-target-1
top100.jcn?80674
xgemius.js
Sources:
-------- Setting mode: [frame/domain]
mock-target-1
(no domain)
*Non*URL*path
bar.com
-------- Setting mode: [frame/domain/folder]
(no domain)
*Non*URL*path
bar.com
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
foo.com
_js/production
motor.js?1308927432
foo/path
bar.js?file=bar/zzz.js
block.js?block=foo
foo.js?file=bar/aaa.js
ga.js
jquery-1.5.1.min.js
jquery.cookie.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
motor.js?1308927432
top100.jcn?80674
i
js
jquery-1.5.1.min.js
jquery.cookie.js
xgemius.js
Sources:
-------- Setting mode: [frame/domain/folder]
mock-target-1
(no domain)
*Non*URL*path
bar.com
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
_js/production
motor.js?1308927432
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
i
js
jquery-1.5.1.min.js
jquery.cookie.js
xgemius.js
block.js?block=foo
ga.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
top100.jcn?80674
block.js?block=foo
ga.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
top100.jcn?80674
Sources:
-------- Setting mode: [domain]
mock-target-1
(no domain)
*Non*URL*path
bar.com
(no domain)
*Non*URL*path
bar.com
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
bar.js?file=bar/zzz.js
block.js?block=foo
foo.js?file=bar/aaa.js
ga.js
jquery-1.5.1.min.js
jquery.cookie.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
motor.js?1308927432
top100.jcn?80674
xgemius.js
Sources:
-------- Setting mode: [domain/folder]
(no domain)
*Non*URL*path
bar.com
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
foo.com
_js/production
motor.js?1308927432
foo/path
bar.js?file=bar/zzz.js
block.js?block=foo
foo.js?file=bar/aaa.js
ga.js
jquery-1.5.1.min.js
jquery.cookie.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
motor.js?1308927432
top100.jcn?80674
i
js
jquery-1.5.1.min.js
jquery.cookie.js
xgemius.js
Sources:
-------- Setting mode: [domain/folder]
mock-target-1
(no domain)
*Non*URL*path
bar.com
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
foo.com
_js/production
motor.js?1308927432
foo/path
bar.js?file=bar/zzz.js
foo.js?file=bar/aaa.js
i
js
jquery-1.5.1.min.js
jquery.cookie.js
xgemius.js
block.js?block=foo
ga.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
top100.jcn?80674
block.js?block=foo
ga.js
lenta.ban?pg=4883&ifr=1
lenta.ban?pg=5309&ifr=1
top100.jcn?80674
Content Scripts:
-------- Setting mode: [frame]
mock-target-1
*Another*Non*URL*path
bar.js
baz.js
Content Scripts:
-------- Setting mode: [frame/domain]
(no domain)
*Another*Non*URL*path
extension-name
bar.js
baz.js
Content Scripts:
-------- Setting mode: [frame/domain]
mock-target-1
(no domain)
*Another*Non*URL*path
extension-name
bar.js
baz.js
Content Scripts:
-------- Setting mode: [frame/domain/folder]
mock-target-1
(no domain)
*Another*Non*URL*path
extension-name
folder
baz.js
bar.js
(no domain)
*Another*Non*URL*path
extension-name
folder
baz.js
bar.js
Content Scripts:
-------- Setting mode: [domain]
mock-target-1
(no domain)
*Another*Non*URL*path
extension-name
bar.js
baz.js
(no domain)
*Another*Non*URL*path
extension-name
bar.js
baz.js
Content Scripts:
-------- Setting mode: [domain/folder]
mock-target-1
(no domain)
*Another*Non*URL*path
extension-name
folder
baz.js
bar.js
(no domain)
*Another*Non*URL*path
extension-name
folder
baz.js
bar.js
......@@ -17,12 +17,9 @@
sourcesNavigatorView = createNavigatorView(Sources.NetworkNavigatorView);
contentScriptsNavigatorView = createNavigatorView(Sources.ContentScriptsNavigatorView);
Bindings.debuggerWorkspaceBinding._resetForTest(TestRunner.mainTarget);
Bindings.resourceMapping._resetForTest(TestRunner.mainTarget);
var pageMock = new SDKTestRunner.PageMock('http://example.com');
pageMock.turnIntoWorker();
SDKTestRunner.connectToPage('mock-target-1', pageMock);
pageMock.connectAsMainTarget('mock-target-1');
var uiSourceCodes = [];
async function addUISourceCode(url, isContentScript) {
......
......@@ -21,7 +21,7 @@
files = files.map(file => 'http://example.com/' + file);
var page = new SDKTestRunner.PageMock('http://example.com');
SDKTestRunner.connectToPage('mock-page', page);
page.connectAsMainTarget('mock-page');
var uiSourceCodes = [];
for (var i = 0; i < files.length; ++i) {
......
......@@ -13,9 +13,6 @@
Bindings.debuggerWorkspaceBinding._resetForTest(TestRunner.mainTarget);
Bindings.resourceMapping._resetForTest(TestRunner.mainTarget);
var pageMock = new SDKTestRunner.PageMock('mock-url.com/frame.html');
pageMock.turnIntoWorker();
var target2 = SDKTestRunner.connectToPage('mock-target-100', pageMock);
var subframe = TestRunner.mainFrame().childFrames[0];
var sourcesNavigatorView = new Sources.NetworkNavigatorView();
......@@ -36,8 +33,11 @@
uiSourceCodes.push(uiSourceCode);
}
async function addUISourceCode2(url, isContentScript) {
pageMock.evalScript(url, '', isContentScript);
async function addUISourceCode2(url) {
TestRunner.evaluateInPageAnonymously(`
window.workers = window.workers || [];
window.workers.push(new Worker('${url}', {name: 'mock-target-100'}));
`);
var uiSourceCode = await waitForUISourceCodeAdded(url);
uiSourceCodes.push(uiSourceCode);
}
......@@ -84,8 +84,8 @@
TestRunner.addResult('\n\n================================================');
TestRunner.addResult('Adding resources into another target:');
await addUISourceCode2(rootURL + 'foo/bar/script.js?a=3', false);
await addUISourceCode2(rootURL + 'foo/baz/script.js', false);
await addUISourceCode2(TestRunner.url('resources/script1.js?a=3'));
await addUISourceCode2(TestRunner.url('resources/script2.js'));
SourcesTestRunner.dumpNavigatorViewInAllModes(sourcesNavigatorView);
TestRunner.addResult('\n\n================================================');
......@@ -151,7 +151,10 @@
TestRunner.addResult('\n\n================================================');
TestRunner.addResult('Removing all resources:');
Bindings.debuggerWorkspaceBinding._resetForTest(target2);
for (const target of SDK.targetManager.targets()) {
if (target !== TestRunner.mainTarget)
Bindings.debuggerWorkspaceBinding._resetForTest(target);
}
SourcesTestRunner.dumpNavigatorViewInAllModes(sourcesNavigatorView);
SourcesTestRunner.dumpNavigatorViewInAllModes(contentScriptsNavigatorView);
......
......@@ -13,18 +13,6 @@ function nextId(prefix) {
return (prefix || '') + ++id;
}
SDKTestRunner.connectToPage = function(targetName, pageMock, makeMainTarget) {
const mockTarget = SDK.targetManager.createTarget(
nextId('mock-target-'), targetName, pageMock._type, params => pageMock.createConnection(params));
if (makeMainTarget) {
SDK.targetManager._targets = SDK.targetManager._targets.filter(target => target !== mockTarget);
SDK.targetManager._targets.unshift(mockTarget);
}
return mockTarget;
};
SDKTestRunner.PageMock = class {
constructor(url) {
this._url = url;
......@@ -53,10 +41,17 @@ SDKTestRunner.PageMock = class {
this._type = SDK.Target.Type.Worker;
}
createConnection(params) {
this._enabledDomains.clear();
this._connection = new MockPageConnection(this, params);
return this._connection;
connectAsMainTarget(targetName) {
Bindings.debuggerWorkspaceBinding._resetForTest(TestRunner.mainTarget);
Bindings.resourceMapping._resetForTest(TestRunner.mainTarget);
SDK.targetManager._targets = [];
const target = SDK.targetManager.createTarget(nextId('mock-target-'), targetName, this._type, params => {
this._enabledDomains.clear();
this._connection = new MockPageConnection(this, params);
return this._connection;
});
return target;
}
evalScript(url, content, isContentScript) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment