Skip to content

Commit a1f115e

Browse files
OrKoNDevtools-frontend LUCI CQ
authored andcommitted
Implement OpenDevTools
Bug: none Change-Id: Ic1c1c3970786ae00be07baf4a5fce5ba4ff61385 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6830455 Commit-Queue: Alex Rudenko <[email protected]> Reviewed-by: Philip Pfaffe <[email protected]> Reviewed-by: Simon Zünd <[email protected]>
1 parent 42a9d6b commit a1f115e

File tree

3 files changed

+14
-8
lines changed

3 files changed

+14
-8
lines changed

test/e2e_non_hosted/conductor/state-provider.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ export class StateProvider {
8686

8787
const browsingContext = await browser.createBrowserContext();
8888
const inspectedPage = await setupInspectedPage(browsingContext, StateProvider.serverPort);
89-
const devToolsPage = await setupDevToolsPage(browsingContext, settings);
89+
const devToolsPage = await setupDevToolsPage(browsingContext, settings, inspectedPage);
9090
const state = {
9191
devToolsPage,
9292
inspectedPage,

test/e2e_non_hosted/shared/browser-helper.ts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -80,10 +80,6 @@ export class Launcher {
8080
static async browserSetup(settings: BrowserSettings) {
8181
const browser = await Launcher.launchChrome(settings);
8282
setupBrowserProcessIO(browser);
83-
// Close default devtools.
84-
const devToolsTarget = await browser.waitForTarget(target => target.url().startsWith('devtools://'));
85-
const page = await devToolsTarget.page();
86-
await page?.close();
8783
return new BrowserWrapper(browser);
8884
}
8985

@@ -101,7 +97,6 @@ export class Launcher {
10197
'--host-resolver-rules=MAP *.test 127.0.0.1',
10298
'--disable-gpu',
10399
`--disable-features=${disabledFeatures.join(',')}`,
104-
'--auto-open-devtools-for-tabs',
105100
`--custom-devtools-frontend=${frontEndDirectory}`,
106101
'--enable-crash-reporter',
107102
// This has no effect (see https://crbug.com/435638630)

test/e2e_non_hosted/shared/frontend-helper.ts

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import {TestConfig} from '../../conductor/test_config.js';
1212

1313
import type {BrowserWrapper} from './browser-helper.js';
1414
import {PageWrapper} from './page-wrapper.js';
15+
import type {InspectedPage} from './target-helper.js';
1516

1617
export type Action = (element: puppeteer.ElementHandle) => Promise<void>;
1718

@@ -681,8 +682,18 @@ async function setDockingSide(devToolsPage: DevToolsPage, side: string) {
681682
`);
682683
}
683684

684-
export async function setupDevToolsPage(context: puppeteer.BrowserContext, settings: DevtoolsSettings) {
685-
const devToolsTarget = await context.waitForTarget(target => target.url().startsWith('devtools://'));
685+
export async function setupDevToolsPage(
686+
context: puppeteer.BrowserContext, settings: DevtoolsSettings, inspectedPage: InspectedPage) {
687+
const session = await context.browser().target().createCDPSession();
688+
// FIXME: get rid of the reload below and configure
689+
// the initial DevTools state via the openDevTools command.
690+
// @ts-expect-error no types yet
691+
const {targetId} = await session.send('Target.openDevTools', {
692+
// @ts-expect-error need to expose this via Puppeteer.
693+
targetId: inspectedPage.page.target()._getTargetInfo().targetId
694+
});
695+
// @ts-expect-error need to expose this via Puppeteer.
696+
const devToolsTarget = await context.waitForTarget(target => target._getTargetInfo().targetId === targetId);
686697
const frontend = await devToolsTarget?.page();
687698
if (!frontend) {
688699
throw new Error('Unable to find frontend target!');

0 commit comments

Comments
 (0)