Added playwright tests. (#6212)

* Added playwright tests.

* Added clear authorship color.

* Ported enter ts.

* Ported more tests.

* Commented helper tests.

* Fixed admin tests.

* Fixed.

* Fixed admin pages not there.

* Fixed waiting.

* Upload playwright report.

* Remove saucelabs

* Fixed waiting.

* Fixed upload artifact.

* Also install deps.

* Added retry mechanism.

* Added timeout for restart etherpad server.

* Fixed tests.

* Added frontend playwright tests.
This commit is contained in:
SamTV12345 2024-03-10 23:18:50 +01:00 committed by GitHub
parent db46ffb63b
commit c2699e4528
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
40 changed files with 1568 additions and 1285 deletions

View file

@ -0,0 +1,32 @@
import {expect, Page} from "@playwright/test";
export const loginToAdmin = async (page: Page, username: string, password: string) => {
await page.goto('http://localhost:9001/admin/');
await page.waitForSelector('input[name="username"]');
await page.fill('input[name="username"]', username);
await page.fill('input[name="password"]', password);
await page.click('input[type="button"]');
}
export const saveSettings = async (page: Page) => {
// Click save
await page.locator('.settings-button-bar').locator('button').first().click()
await page.waitForSelector('.ToastRootSuccess')
}
export const restartEtherpad = async (page: Page) => {
// Click restart
const restartButton = page.locator('.settings-button-bar').locator('.settingsButton').nth(1)
const settings = page.locator('.settings');
await expect(settings).not.toBeEmpty();
await expect(restartButton).toBeVisible()
await page.locator('.settings-button-bar')
.locator('.settingsButton')
.nth(1)
.click()
await page.waitForTimeout(500)
await page.waitForSelector('.settings')
}