28 lines
781 B
TypeScript
28 lines
781 B
TypeScript
import AxeBuilder from '@axe-core/playwright';
|
|
import { expect, test } from '@playwright/test';
|
|
|
|
for (const locale of ['en', 'fr', 'ar'] as const) {
|
|
for (const theme of ['light', 'dark'] as const) {
|
|
test(`${locale} ${theme} shell has no detectable WCAG A/AA violations`, async ({
|
|
page,
|
|
context,
|
|
}) => {
|
|
await context.addCookies([
|
|
{
|
|
name: 'hpc-theme',
|
|
value: theme,
|
|
domain: '127.0.0.1',
|
|
path: '/',
|
|
secure: false,
|
|
sameSite: 'Lax',
|
|
},
|
|
]);
|
|
await page.goto(`/${locale}`);
|
|
const results = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21aa', 'wcag22aa'])
|
|
.analyze();
|
|
expect(results.violations).toEqual([]);
|
|
});
|
|
}
|
|
}
|