Skip to content

Commit 986bc0c

Browse files
committed
migrate scripts/pit/its/start-wizard.js to use test-utils
1 parent 17af51c commit 986bc0c

File tree

1 file changed

+17
-37
lines changed

1 file changed

+17
-37
lines changed

scripts/pit/its/start-wizard.js

Lines changed: 17 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,19 @@
1-
const { chromium } = require('playwright');
2-
3-
4-
let headless = false, host = 'localhost', port = '8080', mode = 'prod';
5-
process.argv.forEach(a => {
6-
if (/^--headless/.test(a)) {
7-
headless = true;
8-
} else if (/^--port=/.test(a)) {
9-
port = a.split('=')[1];
10-
} else if (/^--mode=/.test(a)) {
11-
mode = a.split('=')[1];
12-
}
13-
});
1+
const { log, args, createPage, closePage, takeScreenshot, waitForServerReady, dismissDevmode } = require('./test-utils');
142

153
(async () => {
16-
const browser = await chromium.launch({
17-
headless: headless,
18-
chromiumSandbox: false
19-
});
20-
const log = s => process.stderr.write(` ${s}`);
4+
const arg = args();
215

22-
const context = await browser.newContext();
23-
// context.setDefaultTimeout(90000);
24-
// context.setDefaultNavigationTimeout(90000)
6+
const page = await createPage(arg.headless);
7+
page.setViewportSize({width: 811, height: 1224});
258

26-
const page = await context.newPage();
27-
page.setViewportSize({width: 811, height: 1224});
9+
await waitForServerReady(page, arg.url);
10+
await takeScreenshot(page, __filename, 'wizard-loaded');
2811

29-
page.on('console', msg => console.log("> CONSOLE:", (msg.text() + ' - ' + msg.location().url).replace(/\s+/g, ' ')));
30-
page.on('pageerror', err => console.log("> PAGEERROR:", ('' + err).replace(/\s+/g, ' ')));
31-
32-
await page.goto(`http://${host}:${port}/`);
33-
34-
// Start a new project
35-
log(`Starting new project\n`);
36-
await page.getByText(/Start (a Project|Playing)/).click();
37-
await page.keyboard.press('Escape');
12+
// Start a new project
13+
log(`Starting new project`);
14+
await page.getByText(/Start (a Project|Playing)/).click();
15+
await page.keyboard.press('Escape');
16+
await takeScreenshot(page, __filename, 'project-started');
3817

3918
// No demo view anymore
4019
// Test example views
@@ -91,7 +70,7 @@ process.argv.forEach(a => {
9170
log(`let's see if fails ....`)
9271
}
9372
}
94-
73+
9574
await page.waitForTimeout(1000);
9675
log(`Created view ${label}\n`);
9776
}
@@ -138,12 +117,13 @@ process.argv.forEach(a => {
138117
await page.getByRole('button', { name: 'Download', exact: true }).click();
139118
const download = await downloadPromise;
140119
await download.saveAs(fname);
141-
log(`Downloaded file ${fname}\n`);
120+
log(`Downloaded file ${fname}`);
142121
await page.getByLabel('Close download dialog').click();
122+
await takeScreenshot(page, __filename, 'download-completed');
143123
} else {
144-
log(`Skipped download of file ${fname} in Windows\n`);
124+
log(`Skipped download of file ${fname} in Windows`);
145125
}
146126

147-
await context.close();
148-
await browser.close();
127+
log('Wizard testing completed successfully');
128+
await closePage(page);
149129
})();

0 commit comments

Comments
 (0)