Files
carmanagement/apps/homepage/tests/visual/homepage.visual.spec.ts
T
root d7fb7b7a7b
Build & Deploy / Build & Push Docker Image (push) Failing after 47s
Build & Deploy / Deploy to VPS (push) Has been skipped
Test / API Unit Tests (push) Failing after 5m4s
Test / Marketplace Unit Tests (push) Failing after 4m55s
Test / Admin Unit Tests (push) Successful in 9m37s
Test / Dashboard Unit Tests (push) Successful in 9m37s
Test / API Integration Tests (push) Successful in 9m54s
redesign the homepage
2026-06-26 16:27:21 -04:00

31 lines
1.3 KiB
TypeScript

import { expect, test } from '@playwright/test';
const scenarios = [
{ name: 'homepage-en-light-desktop', locale: 'en', theme: 'light', width: 1440, height: 1000 },
{ name: 'homepage-en-dark-mobile', locale: 'en', theme: 'dark', width: 390, height: 844 },
{ name: 'homepage-fr-light-tablet', locale: 'fr', theme: 'light', width: 1024, height: 900 },
{ name: 'homepage-fr-dark-mobile', locale: 'fr', theme: 'dark', width: 390, height: 844 },
{ name: 'homepage-ar-light-desktop', locale: 'ar', theme: 'light', width: 1440, height: 1000 },
{ name: 'homepage-ar-dark-mobile', locale: 'ar', theme: 'dark', width: 390, height: 844 },
{ name: 'homepage-en-light-320', locale: 'en', theme: 'light', width: 320, height: 800 },
] as const;
for (const scenario of scenarios) {
test(`${scenario.name} baseline`, async ({ page, context }) => {
test.skip(test.info().project.name !== 'chromium');
await page.setViewportSize({ width: scenario.width, height: scenario.height });
await context.addCookies([
{
name: 'hpc-theme',
value: scenario.theme,
domain: '127.0.0.1',
path: '/',
secure: false,
sameSite: 'Lax',
},
]);
await page.goto(`/${scenario.locale}`);
await expect(page).toHaveScreenshot(`${scenario.name}.png`, { fullPage: true });
});
}