Skip to content

Commit 97ab13d

Browse files
committed
✅(e2e) fix broken e2e tests by updating selectors
selectors were updated to stabilize and fix the failing e2e tests Signed-off-by: Cyril <[email protected]>
1 parent 99d674c commit 97ab13d

File tree

10 files changed

+24
-26
lines changed

10 files changed

+24
-26
lines changed

src/frontend/apps/e2e/__tests__/app-impress/auth.setup.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ const saveStorageState = async (
2323
page.locator('header').first().getByRole('button', {
2424
name: 'Logout',
2525
}),
26-
).toBeVisible();
26+
).toBeVisible({ timeout: 10000 });
2727

2828
await page.context().storageState({
2929
path: storageState as string,

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

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,7 @@ test.describe('Document search', () => {
2626
);
2727
await verifyDocName(page, doc2Title);
2828
await page.goto('/');
29-
await page
30-
.getByTestId('left-panel-desktop')
31-
.getByRole('button', { name: 'search' })
32-
.click();
29+
await page.getByTestId('search-docs-button').click();
3330

3431
await expect(
3532
page.getByRole('img', { name: 'No active search' }),
@@ -104,9 +101,7 @@ test.describe('Document search', () => {
104101
browserName,
105102
}) => {
106103
// Doc grid filters are not visible
107-
const searchButton = page
108-
.getByTestId('left-panel-desktop')
109-
.getByRole('button', { name: 'search', exact: true });
104+
const searchButton = page.getByTestId('search-docs-button');
110105

111106
const filters = page.getByTestId('doc-search-filters');
112107

@@ -170,9 +165,7 @@ test.describe('Document search', () => {
170165
1,
171166
);
172167

173-
const searchButton = page
174-
.getByTestId('left-panel-desktop')
175-
.getByRole('button', { name: 'search' });
168+
const searchButton = page.getByTestId('search-docs-button');
176169

177170
await searchButton.click();
178171
await page.getByRole('combobox', { name: 'Quick search input' }).click();

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ test.describe('Doc Tree', () => {
2525
1,
2626
);
2727
await verifyDocName(page, titleParent);
28-
const addButton = page.getByRole('button', { name: 'New doc' });
28+
const addButton = page.getByTestId('new-doc-button');
2929
const docTree = page.getByTestId('doc-tree');
3030

3131
await expect(addButton).toBeVisible();
@@ -63,7 +63,7 @@ test.describe('Doc Tree', () => {
6363

6464
test('check the reorder of sub pages', async ({ page, browserName }) => {
6565
await createDoc(page, 'doc-tree-content', browserName, 1);
66-
const addButton = page.getByRole('button', { name: 'New doc' });
66+
const addButton = page.getByTestId('new-doc-button');
6767
await expect(addButton).toBeVisible();
6868

6969
const docTree = page.getByTestId('doc-tree');
@@ -201,7 +201,7 @@ test.describe('Doc Tree', () => {
201201
).not.toHaveText(docChild);
202202

203203
const header = page.locator('header').first();
204-
await header.locator('h2').getByText('Docs').click();
204+
await header.locator('h1').getByText('Docs').click();
205205
await expect(page.getByText(docChild)).toBeVisible();
206206
});
207207

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -242,8 +242,8 @@ test.describe('Doc Visibility: Public', () => {
242242
cardContainer.getByText('Public document', { exact: true }),
243243
).toBeVisible();
244244

245-
await expect(page.getByRole('button', { name: 'search' })).toBeVisible();
246-
await expect(page.getByRole('button', { name: 'New doc' })).toBeVisible();
245+
await expect(page.getByTestId('search-docs-button')).toBeVisible();
246+
await expect(page.getByTestId('new-doc-button')).toBeVisible();
247247

248248
const urlDoc = page.url();
249249

@@ -258,8 +258,8 @@ test.describe('Doc Visibility: Public', () => {
258258
await page.goto(urlDoc);
259259

260260
await expect(page.locator('h2').getByText(docTitle)).toBeVisible();
261-
await expect(page.getByRole('button', { name: 'search' })).toBeHidden();
262-
await expect(page.getByRole('button', { name: 'New doc' })).toBeHidden();
261+
await expect(page.getByTestId('search-docs-button')).toBeHidden();
262+
await expect(page.getByTestId('new-doc-button')).toBeHidden();
263263
await expect(page.getByRole('button', { name: 'Share' })).toBeVisible();
264264
const card = page.getByLabel('It is the card information');
265265
await expect(card).toBeVisible();

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ test.describe('Header', () => {
1313
const header = page.locator('header').first();
1414

1515
await expect(header.getByLabel('Back to homepage')).toBeVisible();
16-
await expect(header.locator('h2').getByText('Docs')).toHaveCSS(
16+
await expect(header.locator('h1').getByText('Docs')).toHaveCSS(
1717
'font-family',
1818
/Roboto/i,
1919
);
@@ -37,8 +37,8 @@ test.describe('Header', () => {
3737

3838
const header = page.locator('header').first();
3939

40-
await expect(header.getByLabel('Docs Logo')).toBeVisible();
41-
await expect(header.locator('h2').getByText('Docs')).toHaveCSS(
40+
await expect(header.getByTestId('header-icon-docs')).toBeVisible();
41+
await expect(header.locator('h1').getByText('Docs')).toHaveCSS(
4242
'font-family',
4343
/Marianne/i,
4444
);
@@ -106,7 +106,7 @@ test.describe('Header mobile', () => {
106106
const header = page.locator('header').first();
107107

108108
await expect(header.getByLabel('Open the header menu')).toBeVisible();
109-
await expect(header.getByRole('link', { name: 'Docs Logo' })).toBeVisible();
109+
await expect(header.getByTestId('header-icon-docs')).toBeVisible();
110110
await expect(
111111
header.getByRole('button', {
112112
name: 'Les services de La Suite numérique',

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ test.describe('Left panel desktop', () => {
88
test('checks all the elements are visible', async ({ page }) => {
99
await expect(page.getByTestId('left-panel-desktop')).toBeVisible();
1010
await expect(page.getByTestId('left-panel-mobile')).toBeHidden();
11-
await expect(page.getByRole('button', { name: 'house' })).toBeVisible();
12-
await expect(page.getByRole('button', { name: 'New doc' })).toBeVisible();
11+
await expect(page.getByTestId('home-button')).toBeVisible();
12+
await expect(page.getByTestId('new-doc-button')).toBeVisible();
1313
});
1414
});
1515

@@ -27,8 +27,8 @@ test.describe('Left panel mobile', () => {
2727
await expect(page.getByTestId('left-panel-mobile')).not.toBeInViewport();
2828

2929
const header = page.locator('header').first();
30-
const homeButton = page.getByRole('button', { name: 'house' });
31-
const newDocButton = page.getByRole('button', { name: 'New doc' });
30+
const homeButton = page.getByTestId('home-button');
31+
const newDocButton = page.getByTestId('new-doc-button');
3232
const languageButton = page.getByRole('button', { name: /Language/ });
3333
const logoutButton = page.getByRole('button', { name: 'Logout' });
3434

src/frontend/apps/impress/src/features/header/components/Header.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export const Header = () => {
4949
$margin={{ top: 'auto' }}
5050
>
5151
<IconDocs
52+
data-testid="header-icon-docs"
5253
aria-label={t('Back to homepage')}
5354
width={32}
5455
color={colorsTokens['primary-text']}

src/frontend/apps/impress/src/features/home/components/HomeHeader.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ export const HomeHeader = () => {
6262
$height="fit-content"
6363
>
6464
<IconDocs
65+
data-testid="header-icon-docs"
6566
aria-label={t('Docs Logo')}
6667
width={32}
6768
color={colorsTokens['primary-text']}

src/frontend/apps/impress/src/features/left-panel/components/LeftPanelHeader.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ export const LeftPanelHeader = ({ children }: PropsWithChildren) => {
5454
>
5555
<Box $direction="row" $gap="2px">
5656
<Button
57+
data-testid="home-button"
5758
onClick={goToHome}
5859
aria-label={t('Back to homepage')}
5960
size="medium"
@@ -69,6 +70,7 @@ export const LeftPanelHeader = ({ children }: PropsWithChildren) => {
6970
/>
7071
{authenticated && (
7172
<Button
73+
data-testid="search-docs-button"
7274
onClick={openSearchModal}
7375
size="medium"
7476
color="tertiary-text"

src/frontend/apps/impress/src/features/left-panel/components/LeftPanelHeaderButton.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ export const LeftPanelHeaderButton = () => {
1919
});
2020
return (
2121
<Button
22+
data-testid="new-doc-button"
2223
color="primary"
2324
onClick={() => createDoc()}
2425
icon={<Icon $variation="000" iconName="add" aria-hidden="true" />}

0 commit comments

Comments
 (0)