- Add legales pages. - Add links to the footer for the new pages. Legales pages are based from https://lasuite.numerique.gouv.fr/
77 lines
2.0 KiB
TypeScript
77 lines
2.0 KiB
TypeScript
import { expect, test } from '@playwright/test';
|
|
|
|
import { keyCloakSignIn } from './common';
|
|
|
|
test.beforeEach(async ({ page, browserName }) => {
|
|
await page.goto('/');
|
|
await keyCloakSignIn(page, browserName);
|
|
});
|
|
|
|
test.describe('Footer', () => {
|
|
test('checks all the elements are visible', async ({ page }) => {
|
|
const footer = page.locator('footer').first();
|
|
|
|
await expect(footer.getByAltText('Marianne Logo')).toBeVisible();
|
|
|
|
await expect(
|
|
footer.getByAltText('Freedom Equality Fraternity Logo'),
|
|
).toBeVisible();
|
|
|
|
await expect(
|
|
footer.getByRole('link', { name: 'legifrance.gouv.fr' }),
|
|
).toBeVisible();
|
|
|
|
await expect(
|
|
footer.getByRole('link', { name: 'info.gouv.fr' }),
|
|
).toBeVisible();
|
|
|
|
await expect(
|
|
footer.getByRole('link', { name: 'service-public.fr' }),
|
|
).toBeVisible();
|
|
|
|
await expect(
|
|
footer.getByRole('link', { name: 'data.gouv.fr' }),
|
|
).toBeVisible();
|
|
|
|
await expect(
|
|
footer.getByRole('link', { name: 'Legal Notice' }),
|
|
).toBeVisible();
|
|
|
|
await expect(
|
|
footer.getByRole('link', { name: 'Personal data and cookies' }),
|
|
).toBeVisible();
|
|
|
|
await expect(
|
|
footer.getByRole('link', { name: 'Accessibility' }),
|
|
).toBeVisible();
|
|
|
|
await expect(
|
|
footer.getByText(
|
|
'Unless otherwise stated, all content on this site is under licence',
|
|
),
|
|
).toBeVisible();
|
|
});
|
|
|
|
const legalPages = [
|
|
{ name: 'Legal Notice', url: '/legal-notice/' },
|
|
{ name: 'Personal data and cookies', url: '/personal-data-cookies/' },
|
|
{ name: 'Accessibility', url: '/accessibility/' },
|
|
];
|
|
for (const { name, url } of legalPages) {
|
|
test(`checks ${name} page`, async ({ page }) => {
|
|
const footer = page.locator('footer').first();
|
|
await footer.getByRole('link', { name }).click();
|
|
|
|
await expect(
|
|
page
|
|
.getByRole('heading', {
|
|
name,
|
|
})
|
|
.first(),
|
|
).toBeVisible();
|
|
|
|
await expect(page).toHaveURL(url);
|
|
});
|
|
}
|
|
});
|