misc/ Upgrade eslint version
This commit is contained in:
117
e2e/main.spec.ts
117
e2e/main.spec.ts
@@ -1,58 +1,59 @@
|
||||
import { BrowserContext, ElectronApplication, Page, _electron as electron } from 'playwright';
|
||||
import { test, expect } from '@playwright/test';
|
||||
const PATH = require('path');
|
||||
|
||||
test.describe('Check Home Page', async () => {
|
||||
let app: ElectronApplication;
|
||||
let firstWindow: Page;
|
||||
let context: BrowserContext;
|
||||
|
||||
test.beforeAll( async () => {
|
||||
app = await electron.launch({ args: [PATH.join(__dirname, '../app/main.js'), PATH.join(__dirname, '../app/package.json')] });
|
||||
context = app.context();
|
||||
await context.tracing.start({ screenshots: true, snapshots: true });
|
||||
firstWindow = await app.firstWindow();
|
||||
});
|
||||
|
||||
test('Launch electron app', async () => {
|
||||
|
||||
const windowState: { isVisible: boolean; isDevToolsOpened: boolean; isCrashed: boolean } = await app.evaluate(async (process) => {
|
||||
const mainWindow = process.BrowserWindow.getAllWindows()[0];
|
||||
|
||||
const getState = () => ({
|
||||
isVisible: mainWindow.isVisible(),
|
||||
isDevToolsOpened: mainWindow.webContents.isDevToolsOpened(),
|
||||
isCrashed: mainWindow.webContents.isCrashed(),
|
||||
});
|
||||
|
||||
return new Promise((resolve) => {
|
||||
if (mainWindow.isVisible()) {
|
||||
resolve(getState());
|
||||
} else {
|
||||
mainWindow.once('ready-to-show', () => setTimeout(() => resolve(getState()), 0));
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
expect(windowState.isVisible).toBeTruthy();
|
||||
expect(windowState.isDevToolsOpened).toBeFalsy();
|
||||
expect(windowState.isCrashed).toBeFalsy();
|
||||
});
|
||||
|
||||
// test('Check Home Page design', async ({ browserName}) => {
|
||||
// // Uncomment if you change the design of Home Page in order to create a new screenshot
|
||||
// const screenshot = await firstWindow.screenshot({ path: '/tmp/home.png' });
|
||||
// expect(screenshot).toMatchSnapshot(`home-${browserName}.png`);
|
||||
// });
|
||||
|
||||
test('Check title', async () => {
|
||||
const elem = await firstWindow.$('app-home h1');
|
||||
const text = await elem.innerText();
|
||||
expect(text).toBe('App works !');
|
||||
});
|
||||
|
||||
test.afterAll( async () => {
|
||||
await context.tracing.stop({ path: 'e2e/tracing/trace.zip' });
|
||||
await app.close();
|
||||
});
|
||||
});
|
||||
import { BrowserContext, ElectronApplication, Page, _electron as electron } from 'playwright';
|
||||
import { test, expect } from '@playwright/test';
|
||||
const PATH = require('path');
|
||||
|
||||
test.describe('Check Home Page', async () => {
|
||||
let app: ElectronApplication;
|
||||
let firstWindow: Page;
|
||||
let context: BrowserContext;
|
||||
|
||||
test.beforeAll( async () => {
|
||||
app = await electron.launch({ args: [PATH.join(__dirname, '../app/main.js'), PATH.join(__dirname, '../app/package.json')] });
|
||||
context = app.context();
|
||||
await context.tracing.start({ screenshots: true, snapshots: true });
|
||||
firstWindow = await app.firstWindow();
|
||||
await firstWindow.waitForLoadState('domcontentloaded');
|
||||
});
|
||||
|
||||
test('Launch electron app', async () => {
|
||||
|
||||
const windowState: { isVisible: boolean; isDevToolsOpened: boolean; isCrashed: boolean } = await app.evaluate(async (process) => {
|
||||
const mainWindow = process.BrowserWindow.getAllWindows()[0];
|
||||
|
||||
const getState = () => ({
|
||||
isVisible: mainWindow.isVisible(),
|
||||
isDevToolsOpened: mainWindow.webContents.isDevToolsOpened(),
|
||||
isCrashed: mainWindow.webContents.isCrashed(),
|
||||
});
|
||||
|
||||
return new Promise((resolve) => {
|
||||
if (mainWindow.isVisible()) {
|
||||
resolve(getState());
|
||||
} else {
|
||||
mainWindow.once('ready-to-show', () => setTimeout(() => resolve(getState()), 0));
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
expect(windowState.isVisible).toBeTruthy();
|
||||
expect(windowState.isDevToolsOpened).toBeFalsy();
|
||||
expect(windowState.isCrashed).toBeFalsy();
|
||||
});
|
||||
|
||||
// test('Check Home Page design', async ({ browserName}) => {
|
||||
// // Uncomment if you change the design of Home Page in order to create a new screenshot
|
||||
// const screenshot = await firstWindow.screenshot({ path: '/tmp/home.png' });
|
||||
// expect(screenshot).toMatchSnapshot(`home-${browserName}.png`);
|
||||
// });
|
||||
|
||||
test('Check title', async () => {
|
||||
const elem = await firstWindow.$('app-home h1');
|
||||
const text = await elem.innerText();
|
||||
expect(text).toBe('App works !');
|
||||
});
|
||||
|
||||
test.afterAll( async () => {
|
||||
await context.tracing.stop({ path: 'e2e/tracing/trace.zip' });
|
||||
await app.close();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/** @type {import('@playwright/test').PlaywrightTestConfig} */
|
||||
const config = {
|
||||
testDir: '.',
|
||||
timeout: 45000,
|
||||
outputDir: './screenshots',
|
||||
use: {
|
||||
headless: false,
|
||||
viewport: { width: 1280, height: 720 },
|
||||
launchOptions: {
|
||||
slowMo: 1000,
|
||||
},
|
||||
trace: 'on',
|
||||
},
|
||||
expect: {
|
||||
toMatchSnapshot: { threshold: 0.2 },
|
||||
},
|
||||
};
|
||||
|
||||
module.exports = config;
|
||||
/** @type {import('@playwright/test').PlaywrightTestConfig} */
|
||||
const config = {
|
||||
testDir: '.',
|
||||
timeout: 45000,
|
||||
outputDir: './screenshots',
|
||||
use: {
|
||||
headless: false,
|
||||
viewport: { width: 1280, height: 720 },
|
||||
launchOptions: {
|
||||
slowMo: 1000,
|
||||
},
|
||||
trace: 'on',
|
||||
},
|
||||
expect: {
|
||||
toMatchSnapshot: { threshold: 0.2 },
|
||||
},
|
||||
};
|
||||
|
||||
module.exports = config;
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"extends": "../tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "../out-tsc/e2e",
|
||||
"module": "commonjs",
|
||||
"types": [
|
||||
"node"
|
||||
]
|
||||
},
|
||||
"include": [
|
||||
"**.spec.ts"
|
||||
],
|
||||
}
|
||||
{
|
||||
"extends": "../tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "../out-tsc/e2e",
|
||||
"module": "commonjs",
|
||||
"types": [
|
||||
"node"
|
||||
]
|
||||
},
|
||||
"include": [
|
||||
"**.spec.ts"
|
||||
],
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user