test: deflake and open sidebar on mobile
This commit is contained in:
parent
231eee3e10
commit
18de4c5895
3 changed files with 45 additions and 2 deletions
|
|
@ -17,6 +17,9 @@ test('has no contacts', async ({ page }) => {
|
|||
test('can add contacts', async ({ page }) => {
|
||||
await verifyCreateUser(page, { names: ['John Contact'] });
|
||||
await verifyCreateUser(page, { names: ['Jack Contact'] });
|
||||
if (await page.locator('#sidebar-show-hide').isVisible()) {
|
||||
await page.locator('#sidebar-show-hide').click();
|
||||
}
|
||||
await expect(page.getByRole("navigation").getByRole("link")).toHaveCount(2);
|
||||
});
|
||||
|
||||
|
|
@ -41,6 +44,10 @@ test('sidebar is sorted alphabetically', async ({ page }) => {
|
|||
await verifyCreateUser(page, { names: ['Alfa'] });
|
||||
await verifyCreateUser(page, { names: ['Golf'] });
|
||||
|
||||
if (await page.locator('#sidebar-show-hide').isVisible()) {
|
||||
await page.locator('#sidebar-show-hide').click();
|
||||
}
|
||||
|
||||
await expect(page.getByRole('navigation')).toHaveText(/Alfa\s*Golf\s*Zulu/);
|
||||
});
|
||||
|
||||
|
|
@ -89,15 +96,22 @@ test('contact list scrolls (independently) to current contact in center of view'
|
|||
}
|
||||
|
||||
await page.goto('/contact/28');
|
||||
if (await page.locator('#sidebar-show-hide').isVisible()) {
|
||||
await page.locator('#sidebar-show-hide').click();
|
||||
}
|
||||
await expect(page.getByRole('navigation').getByRole('link', { name: /Contact28/ })).toBeVisible();
|
||||
expect(await page.locator('main').evaluate(e => e.scrollTop)).toEqual(0);
|
||||
|
||||
await page.goto('/contact/16');
|
||||
if (await page.locator('#sidebar-show-hide').isVisible()) {
|
||||
await page.locator('#sidebar-show-hide').click();
|
||||
}
|
||||
await expect(page.locator('#nav-link-16')).toBeVisible();
|
||||
const linkPos: number = await page.locator('#nav-link-16').evaluate(e => e.getBoundingClientRect().y);
|
||||
|
||||
// roughly centered is fine, not that fussy about headers and whatnot
|
||||
expect(Math.abs(linkPos - (await page.evaluate('window.innerHeight/2') as number))).toBeLessThan(200);
|
||||
expect(await page.getByRole('navigation').evaluate(e => e.scrollTop)).not.toEqual(0);
|
||||
expect(Math.abs(linkPos - (await page.evaluate('window.innerHeight/2') as number))).toBeLessThan(300);
|
||||
});
|
||||
|
||||
test('clicking off contact list when expanded closes it', async ({ page }) => {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue