diff --git a/test/e2e/specs/ESM/esmFloatingPlayer.spec.ts b/test/e2e/specs/ESM/esmFloatingPlayer.spec.ts new file mode 100644 index 000000000..b3919eba0 --- /dev/null +++ b/test/e2e/specs/ESM/esmFloatingPlayer.spec.ts @@ -0,0 +1,12 @@ +import { vpTest } from '../../fixtures/vpTest'; +import { ExampleLinkName } from '../../testData/ExampleLinkNames'; +import { getEsmLinkByName } from '../../testData/esmPageLinksData'; +import { ESM_URL } from '../../testData/esmUrl'; +import { testFloatingPlayerPageVideoIsPlaying } from '../commonSpecs/floatingPlayerPageVideoPlaying'; + +const link = getEsmLinkByName(ExampleLinkName.FloatingPlayer); + +vpTest(`Test if video on ESM floating player page is playing as expected`, async ({ page, pomPages }) => { + await page.goto(ESM_URL); + await testFloatingPlayerPageVideoIsPlaying(page, pomPages, link); +}); diff --git a/test/e2e/specs/NonESM/floatingPlayerPgae.spec.ts b/test/e2e/specs/NonESM/floatingPlayerPgae.spec.ts index c42956764..b52dbf3f3 100644 --- a/test/e2e/specs/NonESM/floatingPlayerPgae.spec.ts +++ b/test/e2e/specs/NonESM/floatingPlayerPgae.spec.ts @@ -1,17 +1,10 @@ import { vpTest } from '../../fixtures/vpTest'; -import { test } from '@playwright/test'; -import { waitForPageToLoadWithTimeout } from '../../src/helpers/waitForPageToLoadWithTimeout'; import { getLinkByName } from '../../testData/pageLinksData'; import { ExampleLinkName } from '../../testData/ExampleLinkNames'; +import { testFloatingPlayerPageVideoIsPlaying } from '../commonSpecs/floatingPlayerPageVideoPlaying'; const link = getLinkByName(ExampleLinkName.FloatingPlayer); vpTest(`Test if video on floating player page is playing as expected`, async ({ page, pomPages }) => { - await test.step('Navigate to floating player page by clicking on link', async () => { - await pomPages.mainPage.clickLinkByName(link.name); - await waitForPageToLoadWithTimeout(page, 5000); - }); - await test.step('Validating that floating player video is playing', async () => { - await pomPages.floatingPlayerPage.floatingPlayerVideoComponent.validateVideoIsPlaying(true); - }); + await testFloatingPlayerPageVideoIsPlaying(page, pomPages, link); }); diff --git a/test/e2e/specs/commonSpecs/floatingPlayerPageVideoPlaying.ts b/test/e2e/specs/commonSpecs/floatingPlayerPageVideoPlaying.ts new file mode 100644 index 000000000..326169927 --- /dev/null +++ b/test/e2e/specs/commonSpecs/floatingPlayerPageVideoPlaying.ts @@ -0,0 +1,14 @@ +import { Page, test } from '@playwright/test'; +import { waitForPageToLoadWithTimeout } from '../../src/helpers/waitForPageToLoadWithTimeout'; +import PageManager from '../../src/pom/PageManager'; +import { ExampleLinkType } from '../../types/exampleLinkType'; + +export async function testFloatingPlayerPageVideoIsPlaying(page: Page, pomPages: PageManager, link: ExampleLinkType) { + await test.step('Navigate to floating player page by clicking on link', async () => { + await pomPages.mainPage.clickLinkByName(link.name); + await waitForPageToLoadWithTimeout(page, 5000); + }); + await test.step('Validating that floating player video is playing', async () => { + await pomPages.floatingPlayerPage.floatingPlayerVideoComponent.validateVideoIsPlaying(true); + }); +}