chore: do not emit comments from codegen (#17747)
This commit is contained in:
parent
be150796f4
commit
5754fb9c6d
|
|
@ -19,7 +19,6 @@ import type { LanguageGenerator, LanguageGeneratorOptions } from './language';
|
||||||
import { sanitizeDeviceOptions, toSignalMap } from './language';
|
import { sanitizeDeviceOptions, toSignalMap } from './language';
|
||||||
import type { ActionInContext } from './codeGenerator';
|
import type { ActionInContext } from './codeGenerator';
|
||||||
import type { Action } from './recorderActions';
|
import type { Action } from './recorderActions';
|
||||||
import { actionTitle } from './recorderActions';
|
|
||||||
import type { MouseClickOptions } from './utils';
|
import type { MouseClickOptions } from './utils';
|
||||||
import { toModifiers } from './utils';
|
import { toModifiers } from './utils';
|
||||||
import { escapeWithQuotes } from '../../utils/isomorphic/stringUtils';
|
import { escapeWithQuotes } from '../../utils/isomorphic/stringUtils';
|
||||||
|
|
@ -65,7 +64,6 @@ export class CSharpLanguageGenerator implements LanguageGenerator {
|
||||||
if (this._mode !== 'library')
|
if (this._mode !== 'library')
|
||||||
pageAlias = pageAlias.replace('page', 'Page');
|
pageAlias = pageAlias.replace('page', 'Page');
|
||||||
const formatter = new CSharpFormatter(8);
|
const formatter = new CSharpFormatter(8);
|
||||||
formatter.add('// ' + actionTitle(action));
|
|
||||||
|
|
||||||
if (action.name === 'openPage') {
|
if (action.name === 'openPage') {
|
||||||
formatter.add(`var ${pageAlias} = await context.NewPageAsync();`);
|
formatter.add(`var ${pageAlias} = await context.NewPageAsync();`);
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,6 @@ import type { LanguageGenerator, LanguageGeneratorOptions } from './language';
|
||||||
import { toSignalMap } from './language';
|
import { toSignalMap } from './language';
|
||||||
import type { ActionInContext } from './codeGenerator';
|
import type { ActionInContext } from './codeGenerator';
|
||||||
import type { Action } from './recorderActions';
|
import type { Action } from './recorderActions';
|
||||||
import { actionTitle } from './recorderActions';
|
|
||||||
import type { MouseClickOptions } from './utils';
|
import type { MouseClickOptions } from './utils';
|
||||||
import { toModifiers } from './utils';
|
import { toModifiers } from './utils';
|
||||||
import deviceDescriptors from '../deviceDescriptors';
|
import deviceDescriptors from '../deviceDescriptors';
|
||||||
|
|
@ -37,7 +36,6 @@ export class JavaLanguageGenerator implements LanguageGenerator {
|
||||||
const pageAlias = actionInContext.frame.pageAlias;
|
const pageAlias = actionInContext.frame.pageAlias;
|
||||||
const formatter = new JavaScriptFormatter(6);
|
const formatter = new JavaScriptFormatter(6);
|
||||||
formatter.newLine();
|
formatter.newLine();
|
||||||
formatter.add('// ' + actionTitle(action));
|
|
||||||
|
|
||||||
if (action.name === 'openPage') {
|
if (action.name === 'openPage') {
|
||||||
formatter.add(`Page ${pageAlias} = context.newPage();`);
|
formatter.add(`Page ${pageAlias} = context.newPage();`);
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,6 @@ import type { LanguageGenerator, LanguageGeneratorOptions } from './language';
|
||||||
import { sanitizeDeviceOptions, toSignalMap } from './language';
|
import { sanitizeDeviceOptions, toSignalMap } from './language';
|
||||||
import type { ActionInContext } from './codeGenerator';
|
import type { ActionInContext } from './codeGenerator';
|
||||||
import type { Action } from './recorderActions';
|
import type { Action } from './recorderActions';
|
||||||
import { actionTitle } from './recorderActions';
|
|
||||||
import type { MouseClickOptions } from './utils';
|
import type { MouseClickOptions } from './utils';
|
||||||
import { toModifiers } from './utils';
|
import { toModifiers } from './utils';
|
||||||
import deviceDescriptors from '../deviceDescriptors';
|
import deviceDescriptors from '../deviceDescriptors';
|
||||||
|
|
@ -46,7 +45,6 @@ export class JavaScriptLanguageGenerator implements LanguageGenerator {
|
||||||
const pageAlias = actionInContext.frame.pageAlias;
|
const pageAlias = actionInContext.frame.pageAlias;
|
||||||
const formatter = new JavaScriptFormatter(2);
|
const formatter = new JavaScriptFormatter(2);
|
||||||
formatter.newLine();
|
formatter.newLine();
|
||||||
formatter.add('// ' + actionTitle(action));
|
|
||||||
|
|
||||||
if (action.name === 'openPage') {
|
if (action.name === 'openPage') {
|
||||||
formatter.add(`const ${pageAlias} = await context.newPage();`);
|
formatter.add(`const ${pageAlias} = await context.newPage();`);
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,6 @@ import type { LanguageGenerator, LanguageGeneratorOptions } from './language';
|
||||||
import { sanitizeDeviceOptions, toSignalMap } from './language';
|
import { sanitizeDeviceOptions, toSignalMap } from './language';
|
||||||
import type { ActionInContext } from './codeGenerator';
|
import type { ActionInContext } from './codeGenerator';
|
||||||
import type { Action } from './recorderActions';
|
import type { Action } from './recorderActions';
|
||||||
import { actionTitle } from './recorderActions';
|
|
||||||
import type { MouseClickOptions } from './utils';
|
import type { MouseClickOptions } from './utils';
|
||||||
import { toModifiers } from './utils';
|
import { toModifiers } from './utils';
|
||||||
import { escapeWithQuotes } from '../../utils/isomorphic/stringUtils';
|
import { escapeWithQuotes } from '../../utils/isomorphic/stringUtils';
|
||||||
|
|
@ -53,7 +52,6 @@ export class PythonLanguageGenerator implements LanguageGenerator {
|
||||||
const pageAlias = actionInContext.frame.pageAlias;
|
const pageAlias = actionInContext.frame.pageAlias;
|
||||||
const formatter = new PythonFormatter(4);
|
const formatter = new PythonFormatter(4);
|
||||||
formatter.newLine();
|
formatter.newLine();
|
||||||
formatter.add('# ' + actionTitle(action));
|
|
||||||
|
|
||||||
if (action.name === 'openPage') {
|
if (action.name === 'openPage') {
|
||||||
formatter.add(`${pageAlias} = ${this._awaitPrefix}context.new_page()`);
|
formatter.add(`${pageAlias} = ${this._awaitPrefix}context.new_page()`);
|
||||||
|
|
|
||||||
|
|
@ -127,38 +127,3 @@ export type FrameDescription = {
|
||||||
name?: string;
|
name?: string;
|
||||||
selectorsChain?: string[];
|
selectorsChain?: string[];
|
||||||
};
|
};
|
||||||
|
|
||||||
export function actionTitle(action: Action): string {
|
|
||||||
switch (action.name) {
|
|
||||||
case 'openPage':
|
|
||||||
return `Open new page`;
|
|
||||||
case 'closePage':
|
|
||||||
return `Close page`;
|
|
||||||
case 'check':
|
|
||||||
return `Check ${action.selector}`;
|
|
||||||
case 'uncheck':
|
|
||||||
return `Uncheck ${action.selector}`;
|
|
||||||
case 'click': {
|
|
||||||
if (action.clickCount === 1)
|
|
||||||
return `Click ${action.selector}`;
|
|
||||||
if (action.clickCount === 2)
|
|
||||||
return `Double click ${action.selector}`;
|
|
||||||
if (action.clickCount === 3)
|
|
||||||
return `Triple click ${action.selector}`;
|
|
||||||
return `${action.clickCount}× click`;
|
|
||||||
}
|
|
||||||
case 'fill':
|
|
||||||
return `Fill ${action.selector}`;
|
|
||||||
case 'setInputFiles':
|
|
||||||
if (action.files.length === 0)
|
|
||||||
return `Clear selected files`;
|
|
||||||
else
|
|
||||||
return `Upload ${action.files.join(', ')}`;
|
|
||||||
case 'navigate':
|
|
||||||
return `Go to ${action.url}`;
|
|
||||||
case 'press':
|
|
||||||
return `Press ${action.key}` + (action.modifiers ? ' with modifiers' : '');
|
|
||||||
case 'select':
|
|
||||||
return `Select ${action.options.join(', ')}`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -35,23 +35,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=Submit
|
|
||||||
await page.locator('text=Submit').click();`);
|
await page.locator('text=Submit').click();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=Submit
|
|
||||||
page.locator("text=Submit").click()`);
|
page.locator("text=Submit").click()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=Submit
|
|
||||||
await page.locator("text=Submit").click()`);
|
await page.locator("text=Submit").click()`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=Submit
|
|
||||||
page.locator("text=Submit").click();`);
|
page.locator("text=Submit").click();`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click text=Submit
|
|
||||||
await page.Locator("text=Submit").ClickAsync();`);
|
await page.Locator("text=Submit").ClickAsync();`);
|
||||||
|
|
||||||
expect(message.text()).toBe('click');
|
expect(message.text()).toBe('click');
|
||||||
|
|
@ -83,7 +78,6 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=Submit
|
|
||||||
await page.locator('text=Submit').click();`);
|
await page.locator('text=Submit').click();`);
|
||||||
expect(message.text()).toBe('click');
|
expect(message.text()).toBe('click');
|
||||||
});
|
});
|
||||||
|
|
@ -114,7 +108,6 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click canvas
|
|
||||||
await page.locator('canvas').click({
|
await page.locator('canvas').click({
|
||||||
position: {
|
position: {
|
||||||
x: 250,
|
x: 250,
|
||||||
|
|
@ -123,20 +116,16 @@ test.describe('cli codegen', () => {
|
||||||
});`);
|
});`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click canvas
|
|
||||||
page.locator("canvas").click(position={"x":250,"y":250})`);
|
page.locator("canvas").click(position={"x":250,"y":250})`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click canvas
|
|
||||||
await page.locator("canvas").click(position={"x":250,"y":250})`);
|
await page.locator("canvas").click(position={"x":250,"y":250})`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click canvas
|
|
||||||
page.locator("canvas").click(new Locator.ClickOptions()
|
page.locator("canvas").click(new Locator.ClickOptions()
|
||||||
.setPosition(250, 250));`);
|
.setPosition(250, 250));`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click canvas
|
|
||||||
await page.Locator("canvas").ClickAsync(new LocatorClickOptions
|
await page.Locator("canvas").ClickAsync(new LocatorClickOptions
|
||||||
{
|
{
|
||||||
Position = new Position
|
Position = new Position
|
||||||
|
|
@ -169,23 +158,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=Submit
|
|
||||||
await page.locator('text=Submit').click();`);
|
await page.locator('text=Submit').click();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=Submit
|
|
||||||
page.locator("text=Submit").click()`);
|
page.locator("text=Submit").click()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=Submit
|
|
||||||
await page.locator("text=Submit").click()`);
|
await page.locator("text=Submit").click()`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=Submit
|
|
||||||
page.locator("text=Submit").click();`);
|
page.locator("text=Submit").click();`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click text=Submit
|
|
||||||
await page.Locator("text=Submit").ClickAsync();`);
|
await page.Locator("text=Submit").ClickAsync();`);
|
||||||
|
|
||||||
expect(message.text()).toBe('click');
|
expect(message.text()).toBe('click');
|
||||||
|
|
@ -220,7 +204,6 @@ test.describe('cli codegen', () => {
|
||||||
page.dispatchEvent('div', 'click', { detail: 1 })
|
page.dispatchEvent('div', 'click', { detail: 1 })
|
||||||
]);
|
]);
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=Some long text here
|
|
||||||
await page.locator('text=Some long text here').click();`);
|
await page.locator('text=Some long text here').click();`);
|
||||||
expect(message.text()).toBe('click');
|
expect(message.text()).toBe('click');
|
||||||
});
|
});
|
||||||
|
|
@ -239,22 +222,17 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Fill input[name="name"]
|
|
||||||
await page.locator('input[name="name"]').fill('John');`);
|
await page.locator('input[name="name"]').fill('John');`);
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Fill input[name="name"]
|
|
||||||
page.locator("input[name=\\\"name\\\"]").fill("John");`);
|
page.locator("input[name=\\\"name\\\"]").fill("John");`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Fill input[name="name"]
|
|
||||||
page.locator(\"input[name=\\\"name\\\"]\").fill(\"John\")`);
|
page.locator(\"input[name=\\\"name\\\"]\").fill(\"John\")`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Fill input[name="name"]
|
|
||||||
await page.locator(\"input[name=\\\"name\\\"]\").fill(\"John\")`);
|
await page.locator(\"input[name=\\\"name\\\"]\").fill(\"John\")`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Fill input[name="name"]
|
|
||||||
await page.Locator(\"input[name=\\\"name\\\"]\").FillAsync(\"John\");`);
|
await page.Locator(\"input[name=\\\"name\\\"]\").FillAsync(\"John\");`);
|
||||||
|
|
||||||
expect(message.text()).toBe('John');
|
expect(message.text()).toBe('John');
|
||||||
|
|
@ -278,22 +256,17 @@ test.describe('cli codegen', () => {
|
||||||
})()
|
})()
|
||||||
]);
|
]);
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Fill input[name="name"]
|
|
||||||
await page.locator('input[name="name"]').fill('てすと');`);
|
await page.locator('input[name="name"]').fill('てすと');`);
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Fill input[name="name"]
|
|
||||||
page.locator("input[name=\\\"name\\\"]").fill("てすと");`);
|
page.locator("input[name=\\\"name\\\"]").fill("てすと");`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Fill input[name="name"]
|
|
||||||
page.locator(\"input[name=\\\"name\\\"]\").fill(\"てすと\")`);
|
page.locator(\"input[name=\\\"name\\\"]\").fill(\"てすと\")`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Fill input[name="name"]
|
|
||||||
await page.locator(\"input[name=\\\"name\\\"]\").fill(\"てすと\")`);
|
await page.locator(\"input[name=\\\"name\\\"]\").fill(\"てすと\")`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Fill input[name="name"]
|
|
||||||
await page.Locator(\"input[name=\\\"name\\\"]\").FillAsync(\"てすと\");`);
|
await page.Locator(\"input[name=\\\"name\\\"]\").FillAsync(\"てすと\");`);
|
||||||
|
|
||||||
expect(message.text()).toBe('てすと');
|
expect(message.text()).toBe('てすと');
|
||||||
|
|
@ -312,7 +285,6 @@ test.describe('cli codegen', () => {
|
||||||
page.fill('textarea', 'John')
|
page.fill('textarea', 'John')
|
||||||
]);
|
]);
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Fill textarea[name="name"]
|
|
||||||
await page.locator('textarea[name="name"]').fill('John');`);
|
await page.locator('textarea[name="name"]').fill('John');`);
|
||||||
expect(message.text()).toBe('John');
|
expect(message.text()).toBe('John');
|
||||||
});
|
});
|
||||||
|
|
@ -334,23 +306,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Press Enter with modifiers
|
|
||||||
await page.locator('input[name="name"]').press('Shift+Enter');`);
|
await page.locator('input[name="name"]').press('Shift+Enter');`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Press Enter with modifiers
|
|
||||||
page.locator("input[name=\\\"name\\\"]").press("Shift+Enter");`);
|
page.locator("input[name=\\\"name\\\"]").press("Shift+Enter");`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Press Enter with modifiers
|
|
||||||
page.locator(\"input[name=\\\"name\\\"]\").press(\"Shift+Enter\")`);
|
page.locator(\"input[name=\\\"name\\\"]\").press(\"Shift+Enter\")`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Press Enter with modifiers
|
|
||||||
await page.locator(\"input[name=\\\"name\\\"]\").press(\"Shift+Enter\")`);
|
await page.locator(\"input[name=\\\"name\\\"]\").press(\"Shift+Enter\")`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Press Enter with modifiers
|
|
||||||
await page.Locator(\"input[name=\\\"name\\\"]\").PressAsync(\"Shift+Enter\");`);
|
await page.Locator(\"input[name=\\\"name\\\"]\").PressAsync(\"Shift+Enter\");`);
|
||||||
|
|
||||||
expect(messages[0].text()).toBe('press');
|
expect(messages[0].text()).toBe('press');
|
||||||
|
|
@ -376,15 +343,12 @@ test.describe('cli codegen', () => {
|
||||||
|
|
||||||
const text = recorder.sources().get('JavaScript').text;
|
const text = recorder.sources().get('JavaScript').text;
|
||||||
expect(text).toContain(`
|
expect(text).toContain(`
|
||||||
// Fill input[name="one"]
|
|
||||||
await page.locator('input[name="one"]').fill('foobar123');`);
|
await page.locator('input[name="one"]').fill('foobar123');`);
|
||||||
|
|
||||||
expect(text).toContain(`
|
expect(text).toContain(`
|
||||||
// Press Tab
|
|
||||||
await page.locator('input[name="one"]').press('Tab');`);
|
await page.locator('input[name="one"]').press('Tab');`);
|
||||||
|
|
||||||
expect(text).toContain(`
|
expect(text).toContain(`
|
||||||
// Fill input[name="two"]
|
|
||||||
await page.locator('input[name="two"]').fill('barfoo321');`);
|
await page.locator('input[name="two"]').fill('barfoo321');`);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -406,7 +370,6 @@ test.describe('cli codegen', () => {
|
||||||
page.press('input', 'ArrowDown')
|
page.press('input', 'ArrowDown')
|
||||||
]);
|
]);
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Press ArrowDown
|
|
||||||
await page.locator('input[name="name"]').press('ArrowDown');`);
|
await page.locator('input[name="name"]').press('ArrowDown');`);
|
||||||
expect(messages[0].text()).toBe('press:ArrowDown');
|
expect(messages[0].text()).toBe('press:ArrowDown');
|
||||||
});
|
});
|
||||||
|
|
@ -430,7 +393,6 @@ test.describe('cli codegen', () => {
|
||||||
page.press('input', 'ArrowDown')
|
page.press('input', 'ArrowDown')
|
||||||
]);
|
]);
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Press ArrowDown
|
|
||||||
await page.locator('input[name="name"]').press('ArrowDown');`);
|
await page.locator('input[name="name"]').press('ArrowDown');`);
|
||||||
expect(messages.length).toBe(2);
|
expect(messages.length).toBe(2);
|
||||||
expect(messages[0].text()).toBe('down:ArrowDown');
|
expect(messages[0].text()).toBe('down:ArrowDown');
|
||||||
|
|
@ -452,23 +414,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Check input[name="accept"]
|
|
||||||
await page.locator('input[name="accept"]').check();`);
|
await page.locator('input[name="accept"]').check();`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Check input[name="accept"]
|
|
||||||
page.locator("input[name=\\\"accept\\\"]").check();`);
|
page.locator("input[name=\\\"accept\\\"]").check();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Check input[name="accept"]
|
|
||||||
page.locator(\"input[name=\\\"accept\\\"]\").check()`);
|
page.locator(\"input[name=\\\"accept\\\"]\").check()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Check input[name="accept"]
|
|
||||||
await page.locator(\"input[name=\\\"accept\\\"]\").check()`);
|
await page.locator(\"input[name=\\\"accept\\\"]\").check()`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Check input[name="accept"]
|
|
||||||
await page.Locator(\"input[name=\\\"accept\\\"]\").CheckAsync();`);
|
await page.Locator(\"input[name=\\\"accept\\\"]\").CheckAsync();`);
|
||||||
|
|
||||||
expect(message.text()).toBe('true');
|
expect(message.text()).toBe('true');
|
||||||
|
|
@ -489,7 +446,6 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Check input[name="accept"]
|
|
||||||
await page.locator('input[name="accept"]').check();`);
|
await page.locator('input[name="accept"]').check();`);
|
||||||
expect(message.text()).toBe('true');
|
expect(message.text()).toBe('true');
|
||||||
});
|
});
|
||||||
|
|
@ -509,7 +465,6 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Check input[name="accept"]
|
|
||||||
await page.locator('input[name="accept"]').check();`);
|
await page.locator('input[name="accept"]').check();`);
|
||||||
expect(message.text()).toBe('true');
|
expect(message.text()).toBe('true');
|
||||||
});
|
});
|
||||||
|
|
@ -529,23 +484,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Uncheck input[name="accept"]
|
|
||||||
await page.locator('input[name="accept"]').uncheck();`);
|
await page.locator('input[name="accept"]').uncheck();`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Uncheck input[name="accept"]
|
|
||||||
page.locator("input[name=\\\"accept\\\"]").uncheck();`);
|
page.locator("input[name=\\\"accept\\\"]").uncheck();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Uncheck input[name="accept"]
|
|
||||||
page.locator(\"input[name=\\\"accept\\\"]\").uncheck()`);
|
page.locator(\"input[name=\\\"accept\\\"]\").uncheck()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Uncheck input[name="accept"]
|
|
||||||
await page.locator(\"input[name=\\\"accept\\\"]\").uncheck()`);
|
await page.locator(\"input[name=\\\"accept\\\"]\").uncheck()`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Uncheck input[name="accept"]
|
|
||||||
await page.Locator(\"input[name=\\\"accept\\\"]\").UncheckAsync();`);
|
await page.Locator(\"input[name=\\\"accept\\\"]\").UncheckAsync();`);
|
||||||
|
|
||||||
expect(message.text()).toBe('false');
|
expect(message.text()).toBe('false');
|
||||||
|
|
@ -566,23 +516,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Select 2
|
|
||||||
await page.locator('select').selectOption('2');`);
|
await page.locator('select').selectOption('2');`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Select 2
|
|
||||||
page.locator("select").selectOption("2");`);
|
page.locator("select").selectOption("2");`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Select 2
|
|
||||||
page.locator(\"select\").select_option(\"2\")`);
|
page.locator(\"select\").select_option(\"2\")`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Select 2
|
|
||||||
await page.locator(\"select\").select_option(\"2\")`);
|
await page.locator(\"select\").select_option(\"2\")`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Select 2
|
|
||||||
await page.Locator(\"select\").SelectOptionAsync(new[] { \"2\" });`);
|
await page.Locator(\"select\").SelectOptionAsync(new[] { \"2\" });`);
|
||||||
|
|
||||||
expect(message.text()).toBe('2');
|
expect(message.text()).toBe('2');
|
||||||
|
|
@ -604,26 +549,22 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=link
|
|
||||||
const [page1] = await Promise.all([
|
const [page1] = await Promise.all([
|
||||||
page.waitForEvent('popup'),
|
page.waitForEvent('popup'),
|
||||||
page.locator('text=link').click()
|
page.locator('text=link').click()
|
||||||
]);`);
|
]);`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=link
|
|
||||||
Page page1 = page.waitForPopup(() -> {
|
Page page1 = page.waitForPopup(() -> {
|
||||||
page.locator("text=link").click();
|
page.locator("text=link").click();
|
||||||
});`);
|
});`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=link
|
|
||||||
with page.expect_popup() as popup_info:
|
with page.expect_popup() as popup_info:
|
||||||
page.locator(\"text=link\").click()
|
page.locator(\"text=link\").click()
|
||||||
page1 = popup_info.value`);
|
page1 = popup_info.value`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=link
|
|
||||||
async with page.expect_popup() as popup_info:
|
async with page.expect_popup() as popup_info:
|
||||||
await page.locator(\"text=link\").click()
|
await page.locator(\"text=link\").click()
|
||||||
page1 = await popup_info.value`);
|
page1 = await popup_info.value`);
|
||||||
|
|
@ -651,37 +592,30 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect.soft(sources.get('JavaScript').text).toContain(`
|
expect.soft(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=link
|
|
||||||
await page.locator('text=link').click();
|
await page.locator('text=link').click();
|
||||||
await page.waitForURL('about:blank#foo');`);
|
await page.waitForURL('about:blank#foo');`);
|
||||||
|
|
||||||
expect.soft(sources.get('Playwright Test').text).toContain(`
|
expect.soft(sources.get('Playwright Test').text).toContain(`
|
||||||
// Click text=link
|
|
||||||
await page.locator('text=link').click();
|
await page.locator('text=link').click();
|
||||||
await expect(page).toHaveURL('about:blank#foo');`);
|
await expect(page).toHaveURL('about:blank#foo');`);
|
||||||
|
|
||||||
expect.soft(sources.get('Java').text).toContain(`
|
expect.soft(sources.get('Java').text).toContain(`
|
||||||
// Click text=link
|
|
||||||
page.locator("text=link").click();
|
page.locator("text=link").click();
|
||||||
assertThat(page).hasURL("about:blank#foo");`);
|
assertThat(page).hasURL("about:blank#foo");`);
|
||||||
|
|
||||||
expect.soft(sources.get('Python').text).toContain(`
|
expect.soft(sources.get('Python').text).toContain(`
|
||||||
# Click text=link
|
|
||||||
page.locator("text=link").click()
|
page.locator("text=link").click()
|
||||||
page.wait_for_url("about:blank#foo")`);
|
page.wait_for_url("about:blank#foo")`);
|
||||||
|
|
||||||
expect.soft(sources.get('Python Async').text).toContain(`
|
expect.soft(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=link
|
|
||||||
await page.locator("text=link").click()
|
await page.locator("text=link").click()
|
||||||
await page.wait_for_url("about:blank#foo")`);
|
await page.wait_for_url("about:blank#foo")`);
|
||||||
|
|
||||||
expect.soft(sources.get('Pytest').text).toContain(`
|
expect.soft(sources.get('Pytest').text).toContain(`
|
||||||
# Click text=link
|
|
||||||
page.locator("text=link").click()
|
page.locator("text=link").click()
|
||||||
expect(page).to_have_url("about:blank#foo")`);
|
expect(page).to_have_url("about:blank#foo")`);
|
||||||
|
|
||||||
expect.soft(sources.get('C#').text).toContain(`
|
expect.soft(sources.get('C#').text).toContain(`
|
||||||
// Click text=link
|
|
||||||
await page.Locator("text=link").ClickAsync();
|
await page.Locator("text=link").ClickAsync();
|
||||||
await page.WaitForURLAsync("about:blank#foo");`);
|
await page.WaitForURLAsync("about:blank#foo");`);
|
||||||
|
|
||||||
|
|
@ -704,27 +638,22 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect.soft(sources.get('JavaScript').text).toContain(`
|
expect.soft(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=link
|
|
||||||
await page.locator('text=link').click();
|
await page.locator('text=link').click();
|
||||||
await page.waitForURL('about:blank#foo');`);
|
await page.waitForURL('about:blank#foo');`);
|
||||||
|
|
||||||
expect.soft(sources.get('Java').text).toContain(`
|
expect.soft(sources.get('Java').text).toContain(`
|
||||||
// Click text=link
|
|
||||||
page.locator("text=link").click();
|
page.locator("text=link").click();
|
||||||
assertThat(page).hasURL("about:blank#foo");`);
|
assertThat(page).hasURL("about:blank#foo");`);
|
||||||
|
|
||||||
expect.soft(sources.get('Python').text).toContain(`
|
expect.soft(sources.get('Python').text).toContain(`
|
||||||
# Click text=link
|
|
||||||
page.locator(\"text=link\").click()
|
page.locator(\"text=link\").click()
|
||||||
page.wait_for_url("about:blank#foo")`);
|
page.wait_for_url("about:blank#foo")`);
|
||||||
|
|
||||||
expect.soft(sources.get('Python Async').text).toContain(`
|
expect.soft(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=link
|
|
||||||
await page.locator(\"text=link\").click()
|
await page.locator(\"text=link\").click()
|
||||||
await page.wait_for_url("about:blank#foo")`);
|
await page.wait_for_url("about:blank#foo")`);
|
||||||
|
|
||||||
expect.soft(sources.get('C#').text).toContain(`
|
expect.soft(sources.get('C#').text).toContain(`
|
||||||
// Click text=link
|
|
||||||
await page.Locator(\"text=link\").ClickAsync();
|
await page.Locator(\"text=link\").ClickAsync();
|
||||||
await page.WaitForURLAsync(\"about:blank#foo\");`);
|
await page.WaitForURLAsync(\"about:blank#foo\");`);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -28,23 +28,18 @@ test.describe('cli codegen', () => {
|
||||||
const sources = await recorder.waitForOutput('JavaScript', `page.goto`);
|
const sources = await recorder.waitForOutput('JavaScript', `page.goto`);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Open new page
|
|
||||||
const page = await context.newPage();`);
|
const page = await context.newPage();`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Open new page
|
|
||||||
Page page = context.newPage();`);
|
Page page = context.newPage();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Open new page
|
|
||||||
page = context.new_page()`);
|
page = context.new_page()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Open new page
|
|
||||||
page = await context.new_page()`);
|
page = await context.new_page()`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Open new page
|
|
||||||
var page = await context.NewPageAsync();`);
|
var page = await context.NewPageAsync();`);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -56,23 +51,18 @@ test.describe('cli codegen', () => {
|
||||||
const sources = await recorder.waitForOutput('JavaScript', 'page1');
|
const sources = await recorder.waitForOutput('JavaScript', 'page1');
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Open new page
|
|
||||||
const page1 = await context.newPage();`);
|
const page1 = await context.newPage();`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Open new page
|
|
||||||
Page page1 = context.newPage();`);
|
Page page1 = context.newPage();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Open new page
|
|
||||||
page1 = context.new_page()`);
|
page1 = context.new_page()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Open new page
|
|
||||||
page1 = await context.new_page()`);
|
page1 = await context.new_page()`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Open new page
|
|
||||||
var page1 = await context.NewPageAsync();`);
|
var page1 = await context.NewPageAsync();`);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -132,23 +122,18 @@ test.describe('cli codegen', () => {
|
||||||
const sources = await recorder.waitForOutput('JavaScript', 'setInputFiles');
|
const sources = await recorder.waitForOutput('JavaScript', 'setInputFiles');
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Upload file-to-upload.txt
|
|
||||||
await page.locator('input[type="file"]').setInputFiles('file-to-upload.txt');`);
|
await page.locator('input[type="file"]').setInputFiles('file-to-upload.txt');`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Upload file-to-upload.txt
|
|
||||||
page.locator("input[type=\\\"file\\\"]").setInputFiles(Paths.get("file-to-upload.txt"));`);
|
page.locator("input[type=\\\"file\\\"]").setInputFiles(Paths.get("file-to-upload.txt"));`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Upload file-to-upload.txt
|
|
||||||
page.locator(\"input[type=\\\"file\\\"]\").set_input_files(\"file-to-upload.txt\")`);
|
page.locator(\"input[type=\\\"file\\\"]\").set_input_files(\"file-to-upload.txt\")`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Upload file-to-upload.txt
|
|
||||||
await page.locator(\"input[type=\\\"file\\\"]\").set_input_files(\"file-to-upload.txt\")`);
|
await page.locator(\"input[type=\\\"file\\\"]\").set_input_files(\"file-to-upload.txt\")`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Upload file-to-upload.txt
|
|
||||||
await page.Locator(\"input[type=\\\"file\\\"]\").SetInputFilesAsync(new[] { \"file-to-upload.txt\" });`);
|
await page.Locator(\"input[type=\\\"file\\\"]\").SetInputFilesAsync(new[] { \"file-to-upload.txt\" });`);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -169,23 +154,18 @@ test.describe('cli codegen', () => {
|
||||||
const sources = await recorder.waitForOutput('JavaScript', 'setInputFiles');
|
const sources = await recorder.waitForOutput('JavaScript', 'setInputFiles');
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Upload file-to-upload.txt, file-to-upload-2.txt
|
|
||||||
await page.locator('input[type=\"file\"]').setInputFiles(['file-to-upload.txt', 'file-to-upload-2.txt']);`);
|
await page.locator('input[type=\"file\"]').setInputFiles(['file-to-upload.txt', 'file-to-upload-2.txt']);`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Upload file-to-upload.txt, file-to-upload-2.txt
|
|
||||||
page.locator("input[type=\\\"file\\\"]").setInputFiles(new Path[] {Paths.get("file-to-upload.txt"), Paths.get("file-to-upload-2.txt")});`);
|
page.locator("input[type=\\\"file\\\"]").setInputFiles(new Path[] {Paths.get("file-to-upload.txt"), Paths.get("file-to-upload-2.txt")});`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Upload file-to-upload.txt, file-to-upload-2.txt
|
|
||||||
page.locator(\"input[type=\\\"file\\\"]\").set_input_files([\"file-to-upload.txt\", \"file-to-upload-2.txt\"]`);
|
page.locator(\"input[type=\\\"file\\\"]\").set_input_files([\"file-to-upload.txt\", \"file-to-upload-2.txt\"]`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Upload file-to-upload.txt, file-to-upload-2.txt
|
|
||||||
await page.locator(\"input[type=\\\"file\\\"]\").set_input_files([\"file-to-upload.txt\", \"file-to-upload-2.txt\"]`);
|
await page.locator(\"input[type=\\\"file\\\"]\").set_input_files([\"file-to-upload.txt\", \"file-to-upload-2.txt\"]`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Upload file-to-upload.txt, file-to-upload-2.txt
|
|
||||||
await page.Locator(\"input[type=\\\"file\\\"]\").SetInputFilesAsync(new[] { \"file-to-upload.txt\", \"file-to-upload-2.txt\" });`);
|
await page.Locator(\"input[type=\\\"file\\\"]\").SetInputFilesAsync(new[] { \"file-to-upload.txt\", \"file-to-upload-2.txt\" });`);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -206,23 +186,18 @@ test.describe('cli codegen', () => {
|
||||||
const sources = await recorder.waitForOutput('JavaScript', 'setInputFiles');
|
const sources = await recorder.waitForOutput('JavaScript', 'setInputFiles');
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Clear selected files
|
|
||||||
await page.locator('input[type=\"file\"]').setInputFiles([]);`);
|
await page.locator('input[type=\"file\"]').setInputFiles([]);`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Clear selected files
|
|
||||||
page.locator("input[type=\\\"file\\\"]").setInputFiles(new Path[0]);`);
|
page.locator("input[type=\\\"file\\\"]").setInputFiles(new Path[0]);`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Clear selected files
|
|
||||||
page.locator(\"input[type=\\\"file\\\"]\").set_input_files([])`);
|
page.locator(\"input[type=\\\"file\\\"]\").set_input_files([])`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Clear selected files
|
|
||||||
await page.locator(\"input[type=\\\"file\\\"]\").set_input_files([])`);
|
await page.locator(\"input[type=\\\"file\\\"]\").set_input_files([])`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Clear selected files
|
|
||||||
await page.Locator(\"input[type=\\\"file\\\"]\").SetInputFilesAsync(new[] { });`);
|
await page.Locator(\"input[type=\\\"file\\\"]\").SetInputFilesAsync(new[] { });`);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
@ -254,7 +229,6 @@ test.describe('cli codegen', () => {
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
const context = await browser.newContext();`);
|
const context = await browser.newContext();`);
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=Download
|
|
||||||
const [download] = await Promise.all([
|
const [download] = await Promise.all([
|
||||||
page.waitForEvent('download'),
|
page.waitForEvent('download'),
|
||||||
page.locator('text=Download').click()
|
page.locator('text=Download').click()
|
||||||
|
|
@ -263,7 +237,6 @@ test.describe('cli codegen', () => {
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
BrowserContext context = browser.newContext();`);
|
BrowserContext context = browser.newContext();`);
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=Download
|
|
||||||
Download download = page.waitForDownload(() -> {
|
Download download = page.waitForDownload(() -> {
|
||||||
page.locator("text=Download").click();
|
page.locator("text=Download").click();
|
||||||
});`);
|
});`);
|
||||||
|
|
@ -271,7 +244,6 @@ test.describe('cli codegen', () => {
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
context = browser.new_context()`);
|
context = browser.new_context()`);
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=Download
|
|
||||||
with page.expect_download() as download_info:
|
with page.expect_download() as download_info:
|
||||||
page.locator(\"text=Download\").click()
|
page.locator(\"text=Download\").click()
|
||||||
download = download_info.value`);
|
download = download_info.value`);
|
||||||
|
|
@ -279,7 +251,6 @@ test.describe('cli codegen', () => {
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
context = await browser.new_context()`);
|
context = await browser.new_context()`);
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=Download
|
|
||||||
async with page.expect_download() as download_info:
|
async with page.expect_download() as download_info:
|
||||||
await page.locator(\"text=Download\").click()
|
await page.locator(\"text=Download\").click()
|
||||||
download = await download_info.value`);
|
download = await download_info.value`);
|
||||||
|
|
@ -287,7 +258,6 @@ test.describe('cli codegen', () => {
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
var context = await browser.NewContextAsync();`);
|
var context = await browser.NewContextAsync();`);
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click text=Download
|
|
||||||
var download1 = await page.RunAndWaitForDownloadAsync(async () =>
|
var download1 = await page.RunAndWaitForDownloadAsync(async () =>
|
||||||
{
|
{
|
||||||
await page.Locator(\"text=Download\").ClickAsync();
|
await page.Locator(\"text=Download\").ClickAsync();
|
||||||
|
|
@ -309,7 +279,6 @@ test.describe('cli codegen', () => {
|
||||||
const sources = await recorder.waitForOutput('JavaScript', 'once');
|
const sources = await recorder.waitForOutput('JavaScript', 'once');
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=click me
|
|
||||||
page.once('dialog', dialog => {
|
page.once('dialog', dialog => {
|
||||||
console.log(\`Dialog message: \${dialog.message()}\`);
|
console.log(\`Dialog message: \${dialog.message()}\`);
|
||||||
dialog.dismiss().catch(() => {});
|
dialog.dismiss().catch(() => {});
|
||||||
|
|
@ -317,7 +286,6 @@ test.describe('cli codegen', () => {
|
||||||
await page.locator('text=click me').click();`);
|
await page.locator('text=click me').click();`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=click me
|
|
||||||
page.onceDialog(dialog -> {
|
page.onceDialog(dialog -> {
|
||||||
System.out.println(String.format("Dialog message: %s", dialog.message()));
|
System.out.println(String.format("Dialog message: %s", dialog.message()));
|
||||||
dialog.dismiss();
|
dialog.dismiss();
|
||||||
|
|
@ -325,17 +293,14 @@ test.describe('cli codegen', () => {
|
||||||
page.locator("text=click me").click();`);
|
page.locator("text=click me").click();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=click me
|
|
||||||
page.once(\"dialog\", lambda dialog: dialog.dismiss())
|
page.once(\"dialog\", lambda dialog: dialog.dismiss())
|
||||||
page.locator(\"text=click me\").click()`);
|
page.locator(\"text=click me\").click()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=click me
|
|
||||||
page.once(\"dialog\", lambda dialog: dialog.dismiss())
|
page.once(\"dialog\", lambda dialog: dialog.dismiss())
|
||||||
await page.locator(\"text=click me\").click()`);
|
await page.locator(\"text=click me\").click()`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click text=click me
|
|
||||||
void page_Dialog1_EventHandler(object sender, IDialog dialog)
|
void page_Dialog1_EventHandler(object sender, IDialog dialog)
|
||||||
{
|
{
|
||||||
Console.WriteLine($\"Dialog message: {dialog.Message}\");
|
Console.WriteLine($\"Dialog message: {dialog.Message}\");
|
||||||
|
|
@ -375,20 +340,16 @@ test.describe('cli codegen', () => {
|
||||||
|
|
||||||
if (browserName !== 'firefox') {
|
if (browserName !== 'firefox') {
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Open new page
|
|
||||||
const page1 = await context.newPage();
|
const page1 = await context.newPage();
|
||||||
await page1.goto('about:blank?foo');`);
|
await page1.goto('about:blank?foo');`);
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Open new page
|
|
||||||
page1 = await context.new_page()
|
page1 = await context.new_page()
|
||||||
await page1.goto("about:blank?foo")`);
|
await page1.goto("about:blank?foo")`);
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Open new page
|
|
||||||
var page1 = await context.NewPageAsync();
|
var page1 = await context.NewPageAsync();
|
||||||
await page1.GotoAsync("about:blank?foo");`);
|
await page1.GotoAsync("about:blank?foo");`);
|
||||||
} else {
|
} else {
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=link
|
|
||||||
const [page1] = await Promise.all([
|
const [page1] = await Promise.all([
|
||||||
page.waitForEvent('popup'),
|
page.waitForEvent('popup'),
|
||||||
page.locator('text=link').click({
|
page.locator('text=link').click({
|
||||||
|
|
@ -576,23 +537,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Fill textarea[name="name"]
|
|
||||||
await page.locator('textarea[name="name"]').fill('Hello\\'"\`\\nWorld');`);
|
await page.locator('textarea[name="name"]').fill('Hello\\'"\`\\nWorld');`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Fill textarea[name="name"]
|
|
||||||
page.locator("textarea[name=\\\"name\\\"]").fill("Hello'\\"\`\\nWorld");`);
|
page.locator("textarea[name=\\\"name\\\"]").fill("Hello'\\"\`\\nWorld");`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Fill textarea[name="name"]
|
|
||||||
page.locator(\"textarea[name=\\\"name\\\"]\").fill(\"Hello'\\"\`\\nWorld\")`);
|
page.locator(\"textarea[name=\\\"name\\\"]\").fill(\"Hello'\\"\`\\nWorld\")`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Fill textarea[name="name"]
|
|
||||||
await page.locator(\"textarea[name=\\\"name\\\"]\").fill(\"Hello'\\"\`\\nWorld\")`);
|
await page.locator(\"textarea[name=\\\"name\\\"]\").fill(\"Hello'\\"\`\\nWorld\")`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Fill textarea[name="name"]
|
|
||||||
await page.Locator(\"textarea[name=\\\"name\\\"]\").FillAsync(\"Hello'\\"\`\\nWorld\");`);
|
await page.Locator(\"textarea[name=\\\"name\\\"]\").FillAsync(\"Hello'\\"\`\\nWorld\");`);
|
||||||
|
|
||||||
expect(message.text()).toBe('Hello\'\"\`\nWorld');
|
expect(message.text()).toBe('Hello\'\"\`\nWorld');
|
||||||
|
|
|
||||||
|
|
@ -37,23 +37,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=Submit >> nth=0
|
|
||||||
await page.locator('text=Submit').first().click();`);
|
await page.locator('text=Submit').first().click();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=Submit >> nth=0
|
|
||||||
page.locator("text=Submit").first.click()`);
|
page.locator("text=Submit").first.click()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=Submit >> nth=0
|
|
||||||
await page.locator("text=Submit").first.click()`);
|
await page.locator("text=Submit").first.click()`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=Submit >> nth=0
|
|
||||||
page.locator("text=Submit").first().click();`);
|
page.locator("text=Submit").first().click();`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click text=Submit >> nth=0
|
|
||||||
await page.Locator("text=Submit").First.ClickAsync();`);
|
await page.Locator("text=Submit").First.ClickAsync();`);
|
||||||
|
|
||||||
expect(message.text()).toBe('click1');
|
expect(message.text()).toBe('click1');
|
||||||
|
|
@ -77,23 +72,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=Submit >> nth=1
|
|
||||||
await page.locator('text=Submit').nth(1).click();`);
|
await page.locator('text=Submit').nth(1).click();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=Submit >> nth=1
|
|
||||||
page.locator("text=Submit").nth(1).click()`);
|
page.locator("text=Submit").nth(1).click()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=Submit >> nth=1
|
|
||||||
await page.locator("text=Submit").nth(1).click()`);
|
await page.locator("text=Submit").nth(1).click()`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=Submit >> nth=1
|
|
||||||
page.locator("text=Submit").nth(1).click();`);
|
page.locator("text=Submit").nth(1).click();`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click text=Submit >> nth=1
|
|
||||||
await page.Locator("text=Submit").Nth(1).ClickAsync();`);
|
await page.Locator("text=Submit").Nth(1).ClickAsync();`);
|
||||||
|
|
||||||
expect(message.text()).toBe('click2');
|
expect(message.text()).toBe('click2');
|
||||||
|
|
@ -131,23 +121,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=Hello1
|
|
||||||
await page.frameLocator('#frame1').locator('text=Hello1').click();`);
|
await page.frameLocator('#frame1').locator('text=Hello1').click();`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=Hello1
|
|
||||||
page.frameLocator("#frame1").locator("text=Hello1").click();`);
|
page.frameLocator("#frame1").locator("text=Hello1").click();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=Hello1
|
|
||||||
page.frame_locator("#frame1").locator("text=Hello1").click()`);
|
page.frame_locator("#frame1").locator("text=Hello1").click()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=Hello1
|
|
||||||
await page.frame_locator("#frame1").locator("text=Hello1").click()`);
|
await page.frame_locator("#frame1").locator("text=Hello1").click()`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click text=Hello1
|
|
||||||
await page.FrameLocator("#frame1").Locator("text=Hello1").ClickAsync();`);
|
await page.FrameLocator("#frame1").Locator("text=Hello1").ClickAsync();`);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -157,23 +142,18 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=Hello2
|
|
||||||
await page.frameLocator('#frame1').frameLocator('iframe').locator('text=Hello2').click();`);
|
await page.frameLocator('#frame1').frameLocator('iframe').locator('text=Hello2').click();`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=Hello2
|
|
||||||
page.frameLocator("#frame1").frameLocator("iframe").locator("text=Hello2").click();`);
|
page.frameLocator("#frame1").frameLocator("iframe").locator("text=Hello2").click();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=Hello2
|
|
||||||
page.frame_locator("#frame1").frame_locator("iframe").locator("text=Hello2").click()`);
|
page.frame_locator("#frame1").frame_locator("iframe").locator("text=Hello2").click()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=Hello2
|
|
||||||
await page.frame_locator("#frame1").frame_locator("iframe").locator("text=Hello2").click()`);
|
await page.frame_locator("#frame1").frame_locator("iframe").locator("text=Hello2").click()`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click text=Hello2
|
|
||||||
await page.FrameLocator("#frame1").FrameLocator("iframe").Locator("text=Hello2").ClickAsync();`);
|
await page.FrameLocator("#frame1").FrameLocator("iframe").Locator("text=Hello2").ClickAsync();`);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -183,25 +163,20 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=HelloNameOne
|
|
||||||
await page.frame({
|
await page.frame({
|
||||||
name: 'one'
|
name: 'one'
|
||||||
}).locator('text=HelloNameOne').click();`);
|
}).locator('text=HelloNameOne').click();`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=HelloNameOne
|
|
||||||
page.frame("one").locator("text=HelloNameOne").click();`);
|
page.frame("one").locator("text=HelloNameOne").click();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=HelloNameOne
|
|
||||||
page.frame(name=\"one\").locator(\"text=HelloNameOne\").click()`);
|
page.frame(name=\"one\").locator(\"text=HelloNameOne\").click()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=HelloNameOne
|
|
||||||
await page.frame(name=\"one\").locator(\"text=HelloNameOne\").click()`);
|
await page.frame(name=\"one\").locator(\"text=HelloNameOne\").click()`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click text=HelloNameOne
|
|
||||||
await page.Frame(\"one\").Locator(\"text=HelloNameOne\").ClickAsync();`);
|
await page.Frame(\"one\").Locator(\"text=HelloNameOne\").ClickAsync();`);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -211,25 +186,20 @@ test.describe('cli codegen', () => {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
expect(sources.get('JavaScript').text).toContain(`
|
expect(sources.get('JavaScript').text).toContain(`
|
||||||
// Click text=HelloNameAnonymous
|
|
||||||
await page.frame({
|
await page.frame({
|
||||||
url: 'about:blank'
|
url: 'about:blank'
|
||||||
}).locator('text=HelloNameAnonymous').click();`);
|
}).locator('text=HelloNameAnonymous').click();`);
|
||||||
|
|
||||||
expect(sources.get('Java').text).toContain(`
|
expect(sources.get('Java').text).toContain(`
|
||||||
// Click text=HelloNameAnonymous
|
|
||||||
page.frameByUrl("about:blank").locator("text=HelloNameAnonymous").click();`);
|
page.frameByUrl("about:blank").locator("text=HelloNameAnonymous").click();`);
|
||||||
|
|
||||||
expect(sources.get('Python').text).toContain(`
|
expect(sources.get('Python').text).toContain(`
|
||||||
# Click text=HelloNameAnonymous
|
|
||||||
page.frame(url=\"about:blank\").locator(\"text=HelloNameAnonymous\").click()`);
|
page.frame(url=\"about:blank\").locator(\"text=HelloNameAnonymous\").click()`);
|
||||||
|
|
||||||
expect(sources.get('Python Async').text).toContain(`
|
expect(sources.get('Python Async').text).toContain(`
|
||||||
# Click text=HelloNameAnonymous
|
|
||||||
await page.frame(url=\"about:blank\").locator(\"text=HelloNameAnonymous\").click()`);
|
await page.frame(url=\"about:blank\").locator(\"text=HelloNameAnonymous\").click()`);
|
||||||
|
|
||||||
expect(sources.get('C#').text).toContain(`
|
expect(sources.get('C#').text).toContain(`
|
||||||
// Click text=HelloNameAnonymous
|
|
||||||
await page.FrameByUrl(\"about:blank\").Locator(\"text=HelloNameAnonymous\").ClickAsync();`);
|
await page.FrameByUrl(\"about:blank\").Locator(\"text=HelloNameAnonymous\").ClickAsync();`);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -235,7 +235,6 @@ public class Tests : PageTest
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
public async Task MyTest()
|
public async Task MyTest()
|
||||||
{
|
{
|
||||||
// Go to ${emptyHTML}
|
|
||||||
await Page.GotoAsync("${emptyHTML}");
|
await Page.GotoAsync("${emptyHTML}");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -264,7 +263,6 @@ public class Tests : PageTest
|
||||||
[Test]
|
[Test]
|
||||||
public async Task MyTest()
|
public async Task MyTest()
|
||||||
{
|
{
|
||||||
// Go to ${emptyHTML}
|
|
||||||
await Page.GotoAsync("${emptyHTML}");
|
await Page.GotoAsync("${emptyHTML}");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -101,13 +101,10 @@ test('should save the codegen output to a file if specified', async ({ browserNa
|
||||||
});
|
});
|
||||||
const context = await browser.newContext();
|
const context = await browser.newContext();
|
||||||
|
|
||||||
// Open new page
|
|
||||||
const page = await context.newPage();
|
const page = await context.newPage();
|
||||||
|
|
||||||
// Go to ${emptyHTML}
|
|
||||||
await page.goto('${emptyHTML}');
|
await page.goto('${emptyHTML}');
|
||||||
|
|
||||||
// Close page
|
|
||||||
await page.close();
|
await page.close();
|
||||||
|
|
||||||
// ---------------------
|
// ---------------------
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,6 @@ def browser_context_args(browser_context_args, playwright):
|
||||||
|
|
||||||
def test_example(page: Page) -> None:
|
def test_example(page: Page) -> None:
|
||||||
|
|
||||||
# Go to ${emptyHTML}
|
|
||||||
page.goto("${emptyHTML}")
|
page.goto("${emptyHTML}")
|
||||||
`);
|
`);
|
||||||
});
|
});
|
||||||
|
|
@ -64,7 +63,6 @@ test('should save the codegen output to a file if specified', async ({ runCLI },
|
||||||
|
|
||||||
def test_example(page: Page) -> None:
|
def test_example(page: Page) -> None:
|
||||||
|
|
||||||
# Go to ${emptyHTML}
|
|
||||||
page.goto("${emptyHTML}")
|
page.goto("${emptyHTML}")
|
||||||
`);
|
`);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -97,13 +97,10 @@ async def run(playwright: Playwright) -> None:
|
||||||
browser = await playwright.${browserName}.launch(${launchOptions(channel)})
|
browser = await playwright.${browserName}.launch(${launchOptions(channel)})
|
||||||
context = await browser.new_context()
|
context = await browser.new_context()
|
||||||
|
|
||||||
# Open new page
|
|
||||||
page = await context.new_page()
|
page = await context.new_page()
|
||||||
|
|
||||||
# Go to ${emptyHTML}
|
|
||||||
await page.goto("${emptyHTML}")
|
await page.goto("${emptyHTML}")
|
||||||
|
|
||||||
# Close page
|
|
||||||
await page.close()
|
await page.close()
|
||||||
|
|
||||||
# ---------------------
|
# ---------------------
|
||||||
|
|
|
||||||
|
|
@ -87,13 +87,10 @@ def run(playwright: Playwright) -> None:
|
||||||
browser = playwright.${browserName}.launch(${launchOptions(channel)})
|
browser = playwright.${browserName}.launch(${launchOptions(channel)})
|
||||||
context = browser.new_context()
|
context = browser.new_context()
|
||||||
|
|
||||||
# Open new page
|
|
||||||
page = context.new_page()
|
page = context.new_page()
|
||||||
|
|
||||||
# Go to ${emptyHTML}
|
|
||||||
page.goto("${emptyHTML}")
|
page.goto("${emptyHTML}")
|
||||||
|
|
||||||
# Close page
|
|
||||||
page.close()
|
page.close()
|
||||||
|
|
||||||
# ---------------------
|
# ---------------------
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue