|
1 | 1 | import { TestInfo, expect, test } from "@playwright/test"; |
2 | | -import { AppPageDetails, MAX_AVG_LCP_DURATION_MS } from "@project/e2e/constants"; |
| 2 | +import { AgeBasedHubTestUsers, AppPageDetails, MAX_AVG_LCP_DURATION_MS } from "@project/e2e/constants"; |
3 | 3 | import { accessibilityCheck, benchmarkIfChromium } from "@project/e2e/helpers"; |
4 | | -import { AgeBasedHubInfo, AgeGroup } from "@src/models/ageBasedHub"; |
| 4 | +import { AgeBasedHubInfo } from "@src/models/ageBasedHub"; |
5 | 5 |
|
6 | 6 | test.describe.configure({ mode: "parallel", retries: 1 }); |
7 | 7 |
|
8 | | -type AgeBasedTestUser = { |
9 | | - ageGroup: AgeGroup; |
10 | | - userSession: string; |
11 | | -}; |
12 | | - |
13 | | -const AgeBasedHubTestUsers: AgeBasedTestUser[] = [ |
14 | | - // { ageGroup: AgeGroup.AGE_12_to_16, userSession: "12-16-age-range"}, // user 34 |
15 | | - // { ageGroup: AgeGroup.AGE_17_to_24, userSession: "eligibility-error-400"}, // user 16 |
16 | | - // { ageGroup: AgeGroup.AGE_25_to_64, userSession: "actionable-with-other-setting-suitability-rule"}, // user 12 |
17 | | - { ageGroup: AgeGroup.AGE_65_to_74, userSession: "actionable-with-booking-link" }, // user 19 |
18 | | - // { ageGroup: AgeGroup.AGE_75_to_80, userSession: "actionable-with-booking-button"}, // user 21 |
19 | | - // { ageGroup: AgeGroup.AGE_81_PLUS, userSession: "actionable-with-infotext-action"}, //user 01 |
20 | | -]; |
21 | | - |
22 | 8 | test.describe("Age-Based Hub", () => { |
23 | 9 | AgeBasedHubTestUsers.forEach(({ ageGroup, userSession }) => { |
24 | | - test.use({ storageState: `./e2e/.auth/${userSession}.json` }); |
| 10 | + test.describe(`for ${ageGroup}`, () => { |
| 11 | + test.use({ storageState: `./e2e/.auth/${userSession}.json` }); |
25 | 12 |
|
26 | | - test(`should render hub page for ${ageGroup}`, async ({ page }, testInfo: TestInfo) => { |
27 | | - const hubPageDetails = AppPageDetails["vaccine-hub"]; |
| 13 | + test(`should render hub page for ${ageGroup}`, async ({ page }, testInfo: TestInfo) => { |
| 14 | + const hubPageDetails = AppPageDetails["vaccine-hub"]; |
28 | 15 |
|
29 | | - await page.goto(hubPageDetails.url); |
30 | | - await expect(page).toHaveTitle(hubPageDetails.title); |
31 | | - await expect(page.getByRole("heading", { level: 1, name: hubPageDetails.heading })).toBeVisible(); |
32 | | - await expect(page.getByRole("heading", { level: 2, name: AgeBasedHubInfo[ageGroup]?.heading })).toBeVisible(); |
| 16 | + await page.goto(hubPageDetails.url); |
| 17 | + await expect(page).toHaveTitle(hubPageDetails.title); |
| 18 | + await expect(page.getByRole("heading", { level: 1, name: hubPageDetails.heading })).toBeVisible(); |
| 19 | + await expect(page.getByRole("heading", { level: 2, name: AgeBasedHubInfo[ageGroup]?.heading })).toBeVisible(); |
33 | 20 |
|
34 | | - await accessibilityCheck(page); |
35 | | - await benchmarkIfChromium(page, hubPageDetails.url, MAX_AVG_LCP_DURATION_MS, testInfo); |
| 21 | + await accessibilityCheck(page); |
| 22 | + await benchmarkIfChromium(page, hubPageDetails.url, MAX_AVG_LCP_DURATION_MS, testInfo); |
| 23 | + }); |
36 | 24 | }); |
37 | 25 | }); |
38 | 26 | }); |
0 commit comments