Skip to content

Commit 3607faa

Browse files
committed
✨(frontend) remove redundant aria-label to avoid over-accessibility
aria-label was removed because the visible span already provides the text Signed-off-by: Cyril <[email protected]>
1 parent 0ea7dd7 commit 3607faa

File tree

13 files changed

+58
-40
lines changed

13 files changed

+58
-40
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ and this project adheres to
1717
- ♿ add document visible in list and openable via enter key #1365
1818
- ♿ add pdf outline property to enable bookmarks display #1368
1919
- ♿ hide decorative icons from assistive tech with aria-hidden #1404
20+
- ♿ remove redundant aria-label to avoid over-accessibility #1420
2021

2122
### Fixed
2223

src/frontend/apps/e2e/__tests__/app-impress/doc-editor.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ test.describe('Doc Editor', () => {
100100
const wsClosePromise = webSocket.waitForEvent('close');
101101

102102
await selectVisibility.click();
103-
await page.getByLabel('Connected').click();
103+
await page.getByRole('menuitem', { name: 'Connected' }).click();
104104

105105
// Assert that the doc reconnects to the ws
106106
const wsClose = await wsClosePromise;

src/frontend/apps/e2e/__tests__/app-impress/doc-export.spec.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -394,7 +394,7 @@ test.describe('Doc Export', () => {
394394
})
395395
.click();
396396

397-
const input = page.locator('.--docs--doc-title-input[role="textbox"]');
397+
const input = page.getByRole('textbox', { name: 'Titre du document' });
398398
await expect(input).toBeVisible();
399399
await expect(input).toHaveText('', { timeout: 10000 });
400400
await input.click();
@@ -411,6 +411,10 @@ test.describe('Doc Export', () => {
411411
})
412412
.click();
413413

414+
await expect(
415+
page.getByTestId('doc-open-modal-download-button'),
416+
).toBeVisible();
417+
414418
const downloadPromise = page.waitForEvent('download', (download) => {
415419
return download.suggestedFilename().includes(`${randomDocFrench}.pdf`);
416420
});

src/frontend/apps/e2e/__tests__/app-impress/doc-header.spec.ts

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ test.describe('Doc Header', () => {
9090
const [randomDoc] = await createDoc(page, 'doc-delete', browserName, 1);
9191

9292
await page.getByLabel('Open the document options').click();
93-
await page.getByLabel('Delete document').click();
93+
await page.getByRole('menuitem', { name: 'Delete document' }).click();
9494

9595
await expect(
9696
page.getByRole('heading', { name: 'Delete a doc' }),
@@ -148,7 +148,9 @@ test.describe('Doc Header', () => {
148148

149149
await page.getByLabel('Open the document options').click();
150150

151-
await expect(page.getByLabel('Delete document')).toBeDisabled();
151+
await expect(
152+
page.getByRole('menuitem', { name: 'Delete document' }),
153+
).toBeDisabled();
152154

153155
// Click somewhere else to close the options
154156
await page.click('body', { position: { x: 0, y: 0 } });
@@ -221,7 +223,9 @@ test.describe('Doc Header', () => {
221223
).toBeVisible();
222224
await page.getByLabel('Open the document options').click();
223225

224-
await expect(page.getByLabel('Delete document')).toBeDisabled();
226+
await expect(
227+
page.getByRole('menuitem', { name: 'Delete document' }),
228+
).toBeDisabled();
225229

226230
// Click somewhere else to close the options
227231
await page.click('body', { position: { x: 0, y: 0 } });
@@ -287,7 +291,9 @@ test.describe('Doc Header', () => {
287291
).toBeVisible();
288292
await page.getByLabel('Open the document options').click();
289293

290-
await expect(page.getByLabel('Delete document')).toBeDisabled();
294+
await expect(
295+
page.getByRole('menuitem', { name: 'Delete document' }),
296+
).toBeDisabled();
291297

292298
// Click somewhere else to close the options
293299
await page.click('body', { position: { x: 0, y: 0 } });
@@ -343,7 +349,7 @@ test.describe('Doc Header', () => {
343349

344350
// Copy content to clipboard
345351
await page.getByLabel('Open the document options').click();
346-
await page.getByLabel('Copy as Markdown').click();
352+
await page.getByRole('menuitem', { name: 'Copy as Markdown' }).click();
347353
await expect(page.getByText('Copied to clipboard')).toBeVisible();
348354

349355
// Test that clipboard is in Markdown format
@@ -377,7 +383,7 @@ test.describe('Doc Header', () => {
377383

378384
// Copy content to clipboard
379385
await page.getByLabel('Open the document options').click();
380-
await page.getByLabel('Copy as HTML').click();
386+
await page.getByRole('menuitem', { name: 'Copy as HTML' }).click();
381387
await expect(page.getByText('Copied to clipboard')).toBeVisible();
382388

383389
// Test that clipboard is in HTML format
@@ -568,7 +574,7 @@ test.describe('Documents Header mobile', () => {
568574
await expect(
569575
page.getByRole('menuitem', { name: 'Copy link' }),
570576
).toBeVisible();
571-
await page.getByLabel('Share').click();
577+
await page.getByRole('menuitem', { name: 'Share' }).click();
572578
await expect(page.getByRole('button', { name: 'Copy link' })).toBeVisible();
573579
});
574580

@@ -591,7 +597,7 @@ test.describe('Documents Header mobile', () => {
591597
await goToGridDoc(page);
592598

593599
await page.getByLabel('Open the document options').click();
594-
await page.getByLabel('Share').click();
600+
await page.getByRole('menuitem', { name: 'Share' }).click();
595601

596602
const shareModal = page.getByRole('dialog', {
597603
name: 'Share modal content',

src/frontend/apps/e2e/__tests__/app-impress/doc-member-create.spec.ts

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -74,13 +74,15 @@ test.describe('Document create member', () => {
7474

7575
// Check roles are displayed
7676
await list.getByLabel('doc-role-dropdown').click();
77-
await expect(page.getByLabel('Reader')).toBeVisible();
78-
await expect(page.getByLabel('Editor')).toBeVisible();
79-
await expect(page.getByLabel('Owner')).toBeVisible();
80-
await expect(page.getByLabel('Administrator')).toBeVisible();
77+
await expect(page.getByRole('menuitem', { name: 'Reader' })).toBeVisible();
78+
await expect(page.getByRole('menuitem', { name: 'Editor' })).toBeVisible();
79+
await expect(page.getByRole('menuitem', { name: 'Owner' })).toBeVisible();
80+
await expect(
81+
page.getByRole('menuitem', { name: 'Administrator' }),
82+
).toBeVisible();
8183

8284
// Validate
83-
await page.getByLabel('Administrator').click();
85+
await page.getByRole('menuitem', { name: 'Administrator' }).click();
8486
await page.getByRole('button', { name: 'Invite' }).click();
8587

8688
// Check invitation added
@@ -126,7 +128,7 @@ test.describe('Document create member', () => {
126128
// Choose a role
127129
const container = page.getByTestId('doc-share-add-member-list');
128130
await container.getByLabel('doc-role-dropdown').click();
129-
await page.getByLabel('Owner').click();
131+
await page.getByRole('menuitem', { name: 'Owner' }).click();
130132

131133
const responsePromiseCreateInvitation = page.waitForResponse(
132134
(response) =>
@@ -144,7 +146,7 @@ test.describe('Document create member', () => {
144146

145147
// Choose a role
146148
await container.getByLabel('doc-role-dropdown').click();
147-
await page.getByLabel('Owner').click();
149+
await page.getByRole('menuitem', { name: 'Owner' }).click();
148150

149151
const responsePromiseCreateInvitationFail = page.waitForResponse(
150152
(response) =>
@@ -174,7 +176,7 @@ test.describe('Document create member', () => {
174176
// Choose a role
175177
const container = page.getByTestId('doc-share-add-member-list');
176178
await container.getByLabel('doc-role-dropdown').click();
177-
await page.getByLabel('Administrator').click();
179+
await page.getByRole('menuitem', { name: 'Administrator' }).click();
178180

179181
const responsePromiseCreateInvitation = page.waitForResponse(
180182
(response) =>
@@ -194,14 +196,14 @@ test.describe('Document create member', () => {
194196
await expect(userInvitation).toBeVisible();
195197

196198
await userInvitation.getByLabel('doc-role-dropdown').click();
197-
await page.getByLabel('Reader').click();
199+
await page.getByRole('menuitem', { name: 'Reader' }).click();
198200

199201
const moreActions = userInvitation.getByRole('button', {
200202
name: 'Open invitation actions menu',
201203
});
202204
await moreActions.click();
203205

204-
await page.getByLabel('Delete').click();
206+
await page.getByRole('menuitem', { name: 'Delete' }).click();
205207

206208
await expect(userInvitation).toBeHidden();
207209
});
@@ -257,7 +259,7 @@ test.describe('Document create member', () => {
257259
`doc-share-access-request-row-${emailRequest}`,
258260
);
259261
await container.getByLabel('doc-role-dropdown').click();
260-
await page.getByLabel('Administrator').click();
262+
await page.getByRole('menuitem', { name: 'Administrator' }).click();
261263
await container.getByRole('button', { name: 'Approve' }).click();
262264

263265
await expect(page.getByText('Access Requests')).toBeHidden();

src/frontend/apps/e2e/__tests__/app-impress/doc-member-list.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -171,12 +171,12 @@ test.describe('Document list members', () => {
171171
});
172172

173173
await currentUserRole.click();
174-
await page.getByLabel('Administrator').click();
174+
await page.getByRole('menuitem', { name: 'Administrator' }).click();
175175
await list.click();
176176
await expect(currentUserRole).toBeVisible();
177177

178178
await currentUserRole.click();
179-
await page.getByLabel('Reader').click();
179+
await page.getByRole('menuitem', { name: 'Reader' }).click();
180180
await list.click();
181181
await expect(currentUserRole).toBeHidden();
182182
});

src/frontend/apps/e2e/__tests__/app-impress/doc-tree.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ test.describe('Doc Tree', () => {
224224
);
225225
const currentUserRole = currentUser.getByLabel('doc-role-dropdown');
226226
await currentUserRole.click();
227-
await page.getByLabel('Administrator').click();
227+
await page.getByRole('menuitem', { name: 'Administrator' }).click();
228228
await list.click();
229229

230230
await page.getByRole('button', { name: 'Ok' }).click();

src/frontend/apps/e2e/__tests__/app-impress/doc-version.spec.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ test.describe('Doc Version', () => {
1818
await verifyDocName(page, randomDoc);
1919

2020
await page.getByLabel('Open the document options').click();
21-
await page.getByLabel('Version history').click();
21+
await page.getByRole('menuitem', { name: 'Version history' }).click();
2222
await expect(page.getByText('History', { exact: true })).toBeVisible();
2323

2424
const modal = page.getByLabel('version history modal');
@@ -54,7 +54,7 @@ test.describe('Doc Version', () => {
5454
).toBeVisible();
5555

5656
await page.getByLabel('Open the document options').click();
57-
await page.getByLabel('Version history').click();
57+
await page.getByRole('menuitem', { name: 'Version history' }).click();
5858

5959
await expect(panel).toBeVisible();
6060
await expect(page.getByText('History', { exact: true })).toBeVisible();
@@ -82,7 +82,9 @@ test.describe('Doc Version', () => {
8282
await verifyDocName(page, 'Mocked document');
8383

8484
await page.getByLabel('Open the document options').click();
85-
await expect(page.getByLabel('Version history')).toBeDisabled();
85+
await expect(
86+
page.getByRole('menuitem', { name: 'Version history' }),
87+
).toBeDisabled();
8688
});
8789

8890
test('it restores the doc version', async ({ page, browserName }) => {
@@ -109,7 +111,7 @@ test.describe('Doc Version', () => {
109111
await expect(page.getByText('World')).toBeVisible();
110112

111113
await page.getByLabel('Open the document options').click();
112-
await page.getByLabel('Version history').click();
114+
await page.getByRole('menuitem', { name: 'Version history' }).click();
113115

114116
const modal = page.getByLabel('version history modal');
115117
const panel = modal.getByLabel('version list');

src/frontend/apps/e2e/__tests__/app-impress/doc-visibility.spec.ts

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,17 +45,21 @@ test.describe('Doc Visibility', () => {
4545

4646
await expect(selectVisibility.getByText('Private')).toBeVisible();
4747

48-
await expect(page.getByLabel('Read only')).toBeHidden();
49-
await expect(page.getByLabel('Can read and edit')).toBeHidden();
48+
await expect(
49+
page.getByRole('menuitem', { name: 'Read only' }),
50+
).toBeHidden();
51+
await expect(
52+
page.getByRole('menuitem', { name: 'Can read and edit' }),
53+
).toBeHidden();
5054

5155
await selectVisibility.click();
52-
await page.getByLabel('Connected').click();
56+
await page.getByRole('menuitem', { name: 'Connected' }).click();
5357

5458
await expect(page.getByTestId('doc-access-mode')).toBeVisible();
5559

5660
await selectVisibility.click();
5761

58-
await page.getByLabel('Public', { exact: true }).click();
62+
await page.getByRole('menuitem', { name: 'Public' }).click();
5963

6064
await expect(page.getByTestId('doc-access-mode')).toBeVisible();
6165
});
@@ -293,7 +297,7 @@ test.describe('Doc Visibility: Public', () => {
293297
).toBeVisible();
294298

295299
await page.getByTestId('doc-access-mode').click();
296-
await page.getByLabel('Editing').click();
300+
await page.getByRole('menuitem', { name: 'Editing' }).click();
297301

298302
await expect(
299303
page.getByText('The document visibility has been updated.').first(),
@@ -516,7 +520,7 @@ test.describe('Doc Visibility: Authenticated', () => {
516520

517521
const urlDoc = page.url();
518522
await page.getByTestId('doc-access-mode').click();
519-
await page.getByLabel('Editing').click();
523+
await page.getByRole('menuitem', { name: 'Editing' }).click();
520524

521525
await expect(
522526
page.getByText('The document visibility has been updated.').first(),

src/frontend/apps/e2e/__tests__/app-impress/footer.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ test.describe('Footer', () => {
4747
// Check the translation
4848
const header = page.locator('header').first();
4949
await header.getByRole('button').getByText('English').click();
50-
await page.getByLabel('Français').click();
50+
await page.getByRole('menuitem', { name: 'Français' }).click();
5151

5252
await expect(
5353
page.locator('footer').getByText('Mentions légales'),
@@ -132,7 +132,7 @@ test.describe('Footer', () => {
132132
// Check the translation
133133
const header = page.locator('header').first();
134134
await header.getByRole('button').getByText('English').click();
135-
await page.getByLabel('Français').click();
135+
await page.getByRole('menuitem', { name: 'Français' }).click();
136136

137137
await expect(
138138
page

0 commit comments

Comments
 (0)