Skip to content

Commit

Permalink
Create E2E tests for the Release Notes and Case Studies pages (#15710)
Browse files Browse the repository at this point in the history
* Create E2E tests for the Release Notes, Case Studies, Roadmap pages
Fixes #14777 #14775 #14774
  • Loading branch information
jpandersen87 authored Aug 29, 2024
1 parent 487d454 commit 1ba9021
Show file tree
Hide file tree
Showing 4 changed files with 146 additions and 0 deletions.
17 changes: 17 additions & 0 deletions frontend-react/e2e/pages/public/about/case-studies.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import { BasePage, BasePageTestArgs } from "../../BasePage";

export class AboutCaseStudiesPage extends BasePage {
constructor(testArgs: BasePageTestArgs) {
super(
{
url: "/about/case-studies",
title: "ReportStream case studies",
heading: testArgs.page.getByRole("heading", {
name: "Case studies",
exact: true,
}),
},
testArgs,
);
}
}
17 changes: 17 additions & 0 deletions frontend-react/e2e/pages/public/about/release-notes.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import { BasePage, BasePageTestArgs } from "../../BasePage";

export class AboutReleaseNotesPage extends BasePage {
constructor(testArgs: BasePageTestArgs) {
super(
{
url: "/about/release-notes",
title: "ReportStream release notes",
heading: testArgs.page.getByRole("heading", {
name: "Release notes",
exact: true,
}),
},
testArgs,
);
}
}
56 changes: 56 additions & 0 deletions frontend-react/e2e/spec/all/public/about/case-studies.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
import { aboutSideNav } from "../../../../helpers/internal-links";
import { AboutCaseStudiesPage } from "../../../../pages/public/about/case-studies";
import { test as baseTest } from "../../../../test";

export interface Fixtures {
aboutCaseStudiesPage: AboutCaseStudiesPage;
}

const test = baseTest.extend<Fixtures>({
aboutCaseStudiesPage: async (
{
page: _page,
isMockDisabled,
adminLogin,
senderLogin,
receiverLogin,
storageState,
isFrontendWarningsLog,
frontendWarningsLogPath,
},
use,
) => {
const page = new AboutCaseStudiesPage({
page: _page,
isMockDisabled,
adminLogin,
senderLogin,
receiverLogin,
storageState,
isFrontendWarningsLog,
frontendWarningsLogPath,
});
await page.goto();
await use(page);
},
});

test.describe(
"About / Case Studies page",
{
tag: "@smoke",
},
() => {
test("has side nav", async ({ aboutCaseStudiesPage }) => {
await aboutCaseStudiesPage.testSidenav(aboutSideNav);
});

test("has correct title + heading", async ({ aboutCaseStudiesPage }) => {
await aboutCaseStudiesPage.testHeader();
});

test("footer", async ({ aboutCaseStudiesPage }) => {
await aboutCaseStudiesPage.testFooter();
});
},
);
56 changes: 56 additions & 0 deletions frontend-react/e2e/spec/all/public/about/release-notes.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
import { aboutSideNav } from "../../../../helpers/internal-links";
import { AboutReleaseNotesPage } from "../../../../pages/public/about/release-notes";
import { test as baseTest } from "../../../../test";

export interface Fixtures {
aboutReleaseNotesPage: AboutReleaseNotesPage;
}

const test = baseTest.extend<Fixtures>({
aboutReleaseNotesPage: async (
{
page: _page,
isMockDisabled,
adminLogin,
senderLogin,
receiverLogin,
storageState,
isFrontendWarningsLog,
frontendWarningsLogPath,
},
use,
) => {
const page = new AboutReleaseNotesPage({
page: _page,
isMockDisabled,
adminLogin,
senderLogin,
receiverLogin,
storageState,
isFrontendWarningsLog,
frontendWarningsLogPath,
});
await page.goto();
await use(page);
},
});

test.describe(
"About / Release Notes page",
{
tag: "@smoke",
},
() => {
test("has side nav", async ({ aboutReleaseNotesPage }) => {
await aboutReleaseNotesPage.testSidenav(aboutSideNav);
});

test("has correct title + heading", async ({ aboutReleaseNotesPage }) => {
await aboutReleaseNotesPage.testHeader();
});

test("footer", async ({ aboutReleaseNotesPage }) => {
await aboutReleaseNotesPage.testFooter();
});
},
);

0 comments on commit 1ba9021

Please sign in to comment.