1
0
resumarkdown/tests/mobile.test.ts

39 lines
1.3 KiB
TypeScript
Raw Normal View History

2024-10-12 00:53:39 -05:00
import { expect, test } from '@playwright/test';
import UserAgent from 'user-agents';
test.use({
viewport: { height: 2556, width: 1179 },
userAgent: new UserAgent({ deviceCategory: 'mobile' }).toString(),
});
2024-10-12 00:53:39 -05:00
test('mobile page has nav tree hidden by default', async ({ page }) => {
await page.goto('/');
2024-10-12 23:47:09 -05:00
await expect(page.getByRole('navigation').getByRole('tablist')).toBeHidden();
2024-10-12 00:53:39 -05:00
});
test('mobile page has nav toggle', async ({ page }) => {
await page.goto('/');
2024-10-12 23:47:09 -05:00
await expect(page.getByRole('navigation').getByRole('button')).toBeVisible();
2024-10-12 00:53:39 -05:00
});
test('nav toggle works', async ({ page }) => {
await page.goto('/');
2024-10-12 23:47:09 -05:00
await page.getByText('show navigation').click();
await expect(page.getByRole('navigation').getByRole('tablist')).toBeVisible();
await page.getByText('hide navigation').click();
await expect(page.getByRole('navigation').getByRole('tablist')).toBeHidden();
2024-10-12 00:53:39 -05:00
});
2024-10-12 01:17:44 -05:00
test('mobile page has single-column layout', async ({ page }) => {
await page.goto('/');
2024-10-12 23:47:09 -05:00
await expect(page.getByTestId('content-pane')).toBeVisible();
await expect(page.getByTestId('preview-pane')).toBeHidden();
2024-10-12 01:17:44 -05:00
});
2024-10-12 01:50:08 -05:00
test('mobile page has preview nav item', async ({ page }) => {
await page.goto('/');
await page.getByText('show navigation').click();
await expect(page.getByRole('tab').filter({ hasText: 'preview' })).toBeVisible();
});