Skip to content

Commit

Permalink
separate into 3 separate tests
Browse files Browse the repository at this point in the history
  • Loading branch information
John Pratt committed Jan 17, 2025
1 parent fa9391b commit d6620d0
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 28 deletions.
14 changes: 7 additions & 7 deletions nala/features/personalization/target-on.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,24 @@ module.exports = {
features: [
{
tcid: '0',
name: '@check for running Target tests',
desc: 'there should be 2 running Target tests, one enabled by a URL parameter and one enabled by page metadata',
path: '/drafts/nala/features/personalization/target-on/target-on2?target=on&mep=%2Fdrafts%2Fnala%2Ffeatures%2Fpersonalization%2Ftarget-on%2Fmanifest.json--default',
name: '@check the default page for its default text',
desc: 'the default page should NOT say "Target is running"',
path: '/drafts/nala/features/personalization/target-on/target-on?mep=%2Fdrafts%2Fnala%2Ffeatures%2Fpersonalization%2Ftarget-on%2Fmanifest.json--default',
data: {},
tags: '@targeton0 @smoke @regression @milo ',
},
{
tcid: '1',
name: '@check for running Target tests',
desc: 'there should be 2 running Target tests, one enabled by a URL parameter and one enabled by page metadata',
name: '@check for Target enablement via page metadata',
desc: 'Target should be enabled by page metadata',
path: '/drafts/nala/features/personalization/target-on/target-on',
data: {},
tags: '@targeton1 @smoke @regression @milo ',
},
{
tcid: '2',
name: '@check for running Target tests',
desc: 'there should be 2 running Target tests, one enabled by a URL parameter and one enabled by page metadata',
name: '@check for Target enablement via URL parameter',
desc: 'Target should be enabled by a URL parameter',
path: '/drafts/nala/features/personalization/target-on/target-on2?target=on',
data: {},
tags: '@targeton2 @smoke @regression @milo ',
Expand Down
42 changes: 21 additions & 21 deletions nala/features/personalization/target-on.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
// to run the test: npm run nala stage target-on.test.js

// Note: this test deliberately skips checking for the global metadata spreadsheet because one does not exist in the milo repository

import { expect, test } from '@playwright/test';
Expand All @@ -8,28 +7,29 @@ import MarqueeBlock from '../../blocks/marquee/marquee.page.js';

const miloLibs = process.env.MILO_LIBS || '';

// Test 0: check for running Target tests
// Test 0: check the default page
test(`${features[0].name},${features[0].tags}`, async ({ page, baseURL }) => {
const defaultURL = `${baseURL}${features[0].data.defaultURL}${miloLibs}`;
const metadataURL = `${baseURL}${features[0].data.metadataURL}${miloLibs}`;
const parameterURL = `${baseURL}${features[0].data.parameterURL}${miloLibs}`;
const defaultURL = `${baseURL}${features[0].path}${miloLibs}`;
const marquee = new MarqueeBlock(page);
console.info(`[Test Page]: ${defaultURL}`);
await page.goto(defaultURL);
await expect(marquee.headingXL).toHaveText('Heading XL Marquee standard medium left');
});

await test.step('step-1: verify default test page', async () => {
console.info(`[Test Page]: ${defaultURL}`);
await page.goto(defaultURL);
await expect(marquee.headingXL).toHaveText('Heading XL Marquee standard medium left');
});

await test.step('step-2: verify metadata test page', async () => {
console.info(`[Test Page]: ${metadataURL}`);
await page.goto(metadataURL);
await expect(marquee.headingXL).toHaveText('Target is running');
});
// Test 1: check for Target enablement via page metadata
test(`${features[1].name},${features[1].tags}`, async ({ page, baseURL }) => {
const metadataURL = `${baseURL}${features[1].path}${miloLibs}`;
const marquee = new MarqueeBlock(page);
console.info(`[Test Page]: ${metadataURL}`);
await page.goto(metadataURL);
await expect(marquee.headingXL).toHaveText('Target is running');

Check failure on line 25 in nala/features/personalization/target-on.test.js

View workflow job for this annotation

GitHub Actions / Running Nala E2E UI Tests (20.x)

[milo-live-chromium] › features/personalization/target-on.test.js:20:5 › @check for Target enablement via page metadata

1) [milo-live-chromium] › features/personalization/target-on.test.js:20:5 › @check for Target enablement via page metadata,@targeton1 @smoke @regression @milo Error: Timed out 5000ms waiting for expect(locator).toHaveText(expected) Locator: locator('.marquee').first().locator('.heading-xl').first() Expected string: "Target is running" Received string: "Heading XL Marquee standard medium left" Call log: - expect.toHaveText with timeout 5000ms - waiting for locator('.marquee').first().locator('.heading-xl').first() - locator resolved to <h2 class="heading-xl" id="heading-xl-marquee-standard-medium-left">…</h2> - unexpected value "Heading XL Marquee standard medium left" 23 | console.info(`[Test Page]: ${metadataURL}`); 24 | await page.goto(metadataURL); > 25 | await expect(marquee.headingXL).toHaveText('Target is running'); | ^ 26 | }); 27 | 28 | // Test 2: check for Target enablement via URL parameter at /home/runner/work/milo/milo/nala/features/personalization/target-on.test.js:25:35

Check failure on line 25 in nala/features/personalization/target-on.test.js

View workflow job for this annotation

GitHub Actions / Running Nala E2E UI Tests (20.x)

[milo-live-chromium] › features/personalization/target-on.test.js:20:5 › @check for Target enablement via page metadata

1) [milo-live-chromium] › features/personalization/target-on.test.js:20:5 › @check for Target enablement via page metadata,@targeton1 @smoke @regression @milo Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 5000ms waiting for expect(locator).toHaveText(expected) Locator: locator('.marquee').first().locator('.heading-xl').first() Expected string: "Target is running" Received: <element(s) not found> Call log: - expect.toHaveText with timeout 5000ms - waiting for locator('.marquee').first().locator('.heading-xl').first() 23 | console.info(`[Test Page]: ${metadataURL}`); 24 | await page.goto(metadataURL); > 25 | await expect(marquee.headingXL).toHaveText('Target is running'); | ^ 26 | }); 27 | 28 | // Test 2: check for Target enablement via URL parameter at /home/runner/work/milo/milo/nala/features/personalization/target-on.test.js:25:35
});

await test.step('step-3: verify parameter test page', async () => {
console.info(`[Test Page]: ${parameterURL}`);
await page.goto(parameterURL);
await expect(marquee.headingXL).toHaveText('Target is running');
});
// Test 2: check for Target enablement via URL parameter
test(`${features[2].name},${features[2].tags}`, async ({ page, baseURL }) => {
const parameterURL = `${baseURL}${features[2].path}${miloLibs}`;
const marquee = new MarqueeBlock(page);
console.info(`[Test Page]: ${parameterURL}`);
await page.goto(parameterURL);
await expect(marquee.headingXL).toHaveText('Target is running');

Check failure on line 34 in nala/features/personalization/target-on.test.js

View workflow job for this annotation

GitHub Actions / Running Nala E2E UI Tests (20.x)

[milo-live-chromium] › features/personalization/target-on.test.js:29:5 › @check for Target enablement via URL parameter

2) [milo-live-chromium] › features/personalization/target-on.test.js:29:5 › @check for Target enablement via URL parameter,@targeton2 @smoke @regression @milo Error: Timed out 5000ms waiting for expect(locator).toHaveText(expected) Locator: locator('.marquee').first().locator('.heading-xl').first() Expected string: "Target is running" Received string: "Heading XL Marquee standard medium left" Call log: - expect.toHaveText with timeout 5000ms - waiting for locator('.marquee').first().locator('.heading-xl').first() - locator resolved to <h2 class="heading-xl" id="heading-xl-marquee-standard-medium-left">…</h2> - unexpected value "Heading XL Marquee standard medium left" 32 | console.info(`[Test Page]: ${parameterURL}`); 33 | await page.goto(parameterURL); > 34 | await expect(marquee.headingXL).toHaveText('Target is running'); | ^ 35 | }); 36 | at /home/runner/work/milo/milo/nala/features/personalization/target-on.test.js:34:35

Check failure on line 34 in nala/features/personalization/target-on.test.js

View workflow job for this annotation

GitHub Actions / Running Nala E2E UI Tests (20.x)

[milo-live-chromium] › features/personalization/target-on.test.js:29:5 › @check for Target enablement via URL parameter

2) [milo-live-chromium] › features/personalization/target-on.test.js:29:5 › @check for Target enablement via URL parameter,@targeton2 @smoke @regression @milo Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 5000ms waiting for expect(locator).toHaveText(expected) Locator: locator('.marquee').first().locator('.heading-xl').first() Expected string: "Target is running" Received: <element(s) not found> Call log: - expect.toHaveText with timeout 5000ms - waiting for locator('.marquee').first().locator('.heading-xl').first() 32 | console.info(`[Test Page]: ${parameterURL}`); 33 | await page.goto(parameterURL); > 34 | await expect(marquee.headingXL).toHaveText('Target is running'); | ^ 35 | }); 36 | at /home/runner/work/milo/milo/nala/features/personalization/target-on.test.js:34:35
});

0 comments on commit d6620d0

Please sign in to comment.