Skip to content

Commit 407de29

Browse files
committed
✅(e2e) adds an end to end test for heading accessibility in doc editor
adds an end to end test to verify progressive heading suggestions Signed-off-by: Cyril <[email protected]>
1 parent 0c8bf40 commit 407de29

File tree

1 file changed

+74
-0
lines changed

1 file changed

+74
-0
lines changed
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
import { expect, test } from '@playwright/test';
2+
3+
test.describe('Doc Editor - Heading Accessibility', () => {
4+
test.beforeEach(async ({ page }) => {
5+
await page.goto('/');
6+
});
7+
8+
test('should filter heading options progressively (h1 -> h2 -> h3)', async ({
9+
page,
10+
}) => {
11+
await page.getByRole('button', { name: 'Nouveau doc' }).click();
12+
13+
await page.waitForURL('**/docs/**', {
14+
timeout: 10000,
15+
waitUntil: 'domcontentloaded',
16+
});
17+
18+
const input = page.getByLabel('doc title input');
19+
await input.fill('heading-accessibility-test');
20+
await input.blur();
21+
22+
const editor = page.locator('.ProseMirror');
23+
await editor.click();
24+
25+
await page.keyboard.type('/');
26+
await expect(page.getByText('Titre 1')).toBeVisible();
27+
await expect(page.getByText('Titre 2')).toBeHidden();
28+
await expect(page.getByText('Titre 3')).toBeHidden();
29+
30+
await page.getByText('Titre 1').click();
31+
await page.keyboard.type('Main Title');
32+
await page.keyboard.press('Enter');
33+
34+
await editor.click();
35+
await page.keyboard.type('/');
36+
37+
await expect(page.getByText('Titre 1')).toBeHidden();
38+
await expect(page.getByText('Titre 2')).toBeVisible();
39+
await expect(page.getByText('Titre 3')).toBeHidden();
40+
41+
await page.getByText('Titre 2').click();
42+
await page.keyboard.type('Sub Title');
43+
await page.keyboard.press('Enter');
44+
45+
await editor.click();
46+
await page.keyboard.type('/');
47+
48+
await expect(page.getByText('Titre 1')).toBeHidden();
49+
await expect(page.getByText('Titre 2')).toBeVisible();
50+
await expect(page.getByText('Titre 3')).toBeVisible();
51+
52+
await page.getByText('Titre 3').click();
53+
await page.keyboard.type('Sub Sub Title');
54+
await page.keyboard.press('Enter');
55+
56+
await editor.click();
57+
await page.keyboard.type('/');
58+
59+
await expect(page.getByText('Titre 1')).toBeHidden();
60+
await expect(page.getByText('Titre 2')).toBeHidden();
61+
await expect(page.getByText('Titre 3')).toBeVisible();
62+
63+
await page.getByText('Titre 3').click();
64+
await page.keyboard.type('Another Sub Sub Title');
65+
await page.keyboard.press('Enter');
66+
67+
await editor.click();
68+
await page.keyboard.type('/');
69+
70+
await expect(page.getByText('Titre 1')).toBeHidden();
71+
await expect(page.getByText('Titre 2')).toBeHidden();
72+
await expect(page.getByText('Titre 3')).toBeVisible();
73+
});
74+
});

0 commit comments

Comments
 (0)