tests: attribute electron tests to electron on the dashboard (#6156)

This commit is contained in:
Andrey Lushnikov 2021-04-09 01:19:36 -05:00 committed by GitHub
parent f6606d505b
commit 856ced6e65
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -24,11 +24,13 @@ import { PageTestArgs } from './pageTest';
export class ElectronEnv extends PlaywrightEnv implements Env<ElectronTestArgs> { export class ElectronEnv extends PlaywrightEnv implements Env<ElectronTestArgs> {
private _electronApp: ElectronApplication | undefined; private _electronApp: ElectronApplication | undefined;
private _windows: Page[] = []; private _windows: Page[] = [];
protected _browserVersion: string;
constructor() { constructor() {
super('chromium', { mode: 'default', coverageBrowserName: 'electron' }); super('chromium', { mode: 'default', coverageBrowserName: 'electron' });
// This env prevents 'Electron Security Policy' console message. // This env prevents 'Electron Security Policy' console message.
process.env['ELECTRON_DISABLE_SECURITY_WARNINGS'] = 'true'; process.env['ELECTRON_DISABLE_SECURITY_WARNINGS'] = 'true';
this._browserVersion = require('electron/package.json').version;
} }
private async _newWindow() { private async _newWindow() {
@ -54,6 +56,10 @@ export class ElectronEnv extends PlaywrightEnv implements Env<ElectronTestArgs>
this._electronApp = await result.playwright._electron.launch({ this._electronApp = await result.playwright._electron.launch({
args: [path.join(__dirname, 'electron-app.js')], args: [path.join(__dirname, 'electron-app.js')],
}); });
testInfo.data = {
browserName: 'electron',
browserVersion: this._browserVersion,
};
return { return {
...result, ...result,
electronApp: this._electronApp, electronApp: this._electronApp,
@ -79,7 +85,7 @@ export class ElectronPageEnv extends ElectronEnv implements Env<PageTestArgs> {
const page = await result.newWindow(); const page = await result.newWindow();
return { return {
...result, ...result,
browserVersion: require('electron/package.json').version, browserVersion: this._browserVersion,
page, page,
}; };
} }