Some checks failed
Admin | Playwright Tests / Admin | Playwright Tests | Shard 1 Of 6 (push) Failing after 37s
Admin | Playwright Tests / Admin | Playwright Tests | Shard 2 Of 6 (push) Failing after 7s
Admin | Playwright Tests / Admin | Playwright Tests | Shard 4 Of 6 (push) Failing after 7s
Admin | Playwright Tests / Admin | Playwright Tests | Shard 6 Of 6 (push) Failing after 6s
Linting Tests / PHP 8.3 test on ubuntu-latest (push) Failing after 5s
CI / PHP 8.3 test on ubuntu-latest (push) Failing after 6s
Skills Consistency / validate-skills (push) Successful in 10s
Admin | Playwright Tests / Admin | Playwright Tests | Shard 3 Of 6 (push) Failing after 7s
Admin | Playwright Tests / Admin | Playwright Tests | Shard 5 Of 6 (push) Failing after 6s
59 lines
2.6 KiB
TypeScript
59 lines
2.6 KiB
TypeScript
import * as forms from './form';
|
|
import { generateRandomNumericString } from './faker';
|
|
|
|
const address = async (page) => {
|
|
await page.fill('input[name="billing.company_name"]', forms.form.lastName);
|
|
await page.fill('input[name="billing.first_name"]', forms.form.firstName);
|
|
await page.fill('input[name="billing.last_name"]', forms.form.lastName);
|
|
await page.fill('input[name="billing.email"]', forms.form.email);
|
|
await page.fill('input[name="billing.address.[0]"]', forms.form.firstName);
|
|
await page.selectOption('select[name="billing.country"]', 'IN');
|
|
await page.selectOption('select[name="billing.state"]', 'UP');
|
|
await page.fill('input[name="billing.city"]', forms.form.lastName);
|
|
await page.fill('input[name="billing.postcode"]', generateRandomNumericString(6));
|
|
await page.fill('input[name="billing.phone"]', forms.form.phone);
|
|
|
|
const exists = await page.$$('input[name="billing.save_address"]');
|
|
|
|
if (exists.length != 0) {
|
|
await page.click('input[name="billing.save_address"] + label');
|
|
await page.press('input[name="billing.phone"]', 'Enter');
|
|
} else {
|
|
const checkbox = await page.$$('input[name="billing.use_for_shipping"]');
|
|
|
|
if (Math.floor(Math.random() * 20) % 3 == 1 ? false : true) {
|
|
if (! checkbox[0].isChecked()) {
|
|
await page.click('input[name="billing.use_for_shipping"] + label');
|
|
}
|
|
} else {
|
|
if (checkbox[0].isChecked()) {
|
|
await page.click('input[name="billing.use_for_shipping"] + label');
|
|
}
|
|
|
|
await page.fill('input[name="shipping.company_name"]', forms.form.lastName);
|
|
await page.fill('input[name="shipping.first_name"]', forms.form.firstName);
|
|
await page.fill('input[name="shipping.last_name"]', forms.form.lastName);
|
|
await page.fill('input[name="shipping.email"]', forms.form.email);
|
|
await page.fill('input[name="shipping.address.[0]"]', forms.form.firstName);
|
|
await page.selectOption('select[name="shipping.country"]', 'IN');
|
|
await page.selectOption('select[name="shipping.state"]', 'UP');
|
|
await page.fill('input[name="shipping.city"]', forms.form.lastName);
|
|
await page.fill('input[name="shipping.postcode"]', '201301');
|
|
await page.fill('input[name="shipping.phone"]', forms.form.phone);
|
|
}
|
|
|
|
const nextButton = await page.$$('button.primary-button:visible');
|
|
await nextButton[0].click();
|
|
}
|
|
|
|
const output = await forms.testForm(page)
|
|
|
|
if (output == null) {
|
|
return address(page);
|
|
} else {
|
|
return 'done';
|
|
}
|
|
}
|
|
|
|
export default address;
|