mirror of
https://github.com/go-gitea/gitea.git
synced 2026-11-09 17:37:20 -06:00
Since Playwright 1.56, a WebKit click on a native submit button can return before the form navigation starts, so `toHaveValue` passed on the old page with the value `fill()` just set, and the next step raced the reload. Assert the textarea's text instead, its server-rendered default, which only the reloaded page has. --------- Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
29 lines
1.4 KiB
TypeScript
29 lines
1.4 KiB
TypeScript
import {test, expect} from '@playwright/test';
|
|
import {login, loginUser, apiCreateUser, randomString} from './utils.ts';
|
|
|
|
test('update profile biography', async ({page, request}) => {
|
|
const username = `e2e-settings-${randomString(8)}`;
|
|
const bio = `e2e-bio-${randomString(8)}`;
|
|
await apiCreateUser(request, username);
|
|
await loginUser(page, username);
|
|
await page.goto('/user/settings');
|
|
await page.getByLabel('Biography').fill(bio);
|
|
await page.getByRole('button', {name: 'Update Profile'}).click();
|
|
await expect(page.getByText('Your profile has been updated.', {exact: true})).toBeVisible();
|
|
await expect(page.getByLabel('Biography')).toHaveText(bio);
|
|
await page.getByLabel('Biography').fill('');
|
|
await page.getByRole('button', {name: 'Update Profile'}).click();
|
|
await expect(page.getByText('Your profile has been updated.', {exact: true})).toBeVisible();
|
|
await expect(page.getByLabel('Biography')).toHaveText('');
|
|
});
|
|
|
|
test('select and deselect all webhook events', async ({page}) => {
|
|
await login(page);
|
|
await page.goto('/user/settings/hooks/gitea/new');
|
|
await page.getByRole('radio', {name: 'Custom Events'}).check();
|
|
await page.getByRole('button', {name: 'Select All', exact: true}).click();
|
|
await expect(page.getByRole('checkbox', {checked: false})).toHaveCount(0);
|
|
await page.getByRole('button', {name: 'Deselect All', exact: true}).click();
|
|
await expect(page.getByRole('checkbox', {checked: true})).toHaveAccessibleName('Active');
|
|
});
|