From e2e6a65f8d4e1d0a044a60534c4463a52982cba3 Mon Sep 17 00:00:00 2001 From: Connor Date: Wed, 16 Oct 2024 09:30:24 -0500 Subject: [PATCH] add test confirming default values --- .../__outputs__/playwright-output-default.md | 97 +++ .../__snapshots__/java-junit.test.ts.snap | 630 ++++++++++++++++++ __tests__/java-junit.test.ts | 21 + 3 files changed, 748 insertions(+) create mode 100644 __tests__/__outputs__/playwright-output-default.md diff --git a/__tests__/__outputs__/playwright-output-default.md b/__tests__/__outputs__/playwright-output-default.md new file mode 100644 index 0000000..8b67a06 --- /dev/null +++ b/__tests__/__outputs__/playwright-output-default.md @@ -0,0 +1,97 @@ +![Tests failed](https://img.shields.io/badge/tests-36%20passed%2C%204%20failed%2C%2020%20skipped-critical) +## ❌ fixtures/external/java/playwright-report.xml +**60** tests were completed in **59s** with **36** passed, **4** failed and **20** skipped. +|Test suite|Passed|Failed|Skipped|Time| +|:---|---:|---:|---:|---:| +|[auth.setup.ts](#r0s0)|6✅|||7s| +|[tests/analyze/load-video.spec.ts](#r0s1)|||3⚪|0ms| +|[tests/analyze/seamless-video-playback.spec.ts](#r0s2)|||9⚪|12ms| +|[tests/app.spec.ts](#r0s3)|||1⚪|0ms| +|[tests/grid.spec.ts](#r0s4)|18✅|4❌|3⚪|116s| +|[tests/onboarding.spec.ts](#r0s5)|||4⚪|0ms| +|[tests/statsEngine.spec.ts](#r0s6)|12✅|||36s| +### ✅ auth.setup.ts +``` +✅ authenticate as classic admin +✅ authenticate as basketball admin +✅ authenticate as wrestling admin +✅ authenticate as onboarding admin 1 +✅ authenticate as onboarding admin 3 +✅ authenticate as coachAdmin +``` +### ✅ tests/analyze/load-video.spec.ts +``` +⚪ record "Time to Video" when loading directly via URL › using manual timings +⚪ record "Time to Video" when loading directly via URL › using Performance API mark +⚪ record "Time to Video" when loading directly via URL › using Performance API measurement +``` +### ✅ tests/analyze/seamless-video-playback.spec.ts +``` +⚪ during looping playback › when clip repeats, it starts at the beginning +⚪ during sequential playback ("Play All Clips" mode) › when one clip plays through to the next, overlapping video is skipped +⚪ in 'Play All Clips' mode, clip plays from beginning › when clicked on in navigation module +⚪ in 'Play All Clips' mode, clip plays from beginning › with next clip button +⚪ in 'Play All Clips' mode, clip plays from beginning › with previous clip button +⚪ in 'Loop Clips' mode, clip plays from beginning › when clicked on in navigation module +⚪ in 'Loop Clips' mode, clip plays from beginning › with next clip button +⚪ in 'Loop Clips' mode, clip plays from beginning › with previous clip button +⚪ rewind functions normally +``` +### ✅ tests/app.spec.ts +``` +⚪ App › logs in and loads page +``` +### ❌ tests/grid.spec.ts +``` +✅ Grid › Mobile Web › Athlete › should not be able to edit data +✅ Grid › Mobile Web › Admin or Coach › should be able to edit data +✅ Grid › Field Sets › should update displayed grid columns after editing +⚪ Grid › Field Sets › should update displayed clip preview fields after editing +✅ Grid › Basketball Navigation Module › should display correct moment data when filtered by Scout team Points +✅ Grid › Basketball Navigation Module › should display correct moment data when filtered by Opponent Rebounds +✅ Grid › Basketball Navigation Module › should display correct moment data when filtered by Steals +✅ Grid › Basketball Navigation Module › should display correct moment data when filtered by Rebounds +✅ Grid › Basketball Navigation Module › should display clips for opportunities in Period when filtered by Period +✅ Grid › Basketball Navigation Module › should display clips for opportunities that end in a turnover when filtered by Turnovers +✅ Grid › Basketball Navigation Module › should display correct moment data when filtered by 3FG Attempts +❌ Grid › Column Sorting › AmFb Column Sets › should display correct data when sorting by OFF FORM column + [chrome] › tests/grid.spec.ts:202:11 › Grid › Column Sorting › AmFb Column Sets › should display correct data when sorting by OFF FORM column › Sort grid by OFF FORM in ascending order +⚪ Grid › Column Sorting › Wrestling Column Sets › should display correct data when sorting by Period column +⚪ Grid › Quick Editor › should be able to edit data from quick editor as an admin or coach +❌ Grid › Data Entry › should open select dropdown options when pressing Spacebar in grid cell + [chrome] › tests/grid.spec.ts:254:9 › Grid › Data Entry › should open select dropdown options when pressing Spacebar in grid cell › double click into column OFF FORM clip number 3 +❌ Grid › Data Entry › should be able to use keyboard to navigate horizontal grid and enter data + [chrome] › tests/grid.spec.ts:261:9 › Grid › Data Entry › should be able to use keyboard to navigate horizontal grid and enter data › double click into column OFF FORM clip number 3 +❌ Grid › Data Entry › should be able to use keyboard to navigate vertical grid and enter data + [chrome] › tests/grid.spec.ts:277:9 › Grid › Data Entry › should be able to use keyboard to navigate vertical grid and enter data › Select BUNCH from column OFF FORM list +✅ Grid › Data Entry › should display error state for input with invalid data +✅ Grid › Data Entry › confirm auto-fill works correctly +✅ Grid › Tagged data › Wrestling › should display correct wrestler names tagged from Assist +✅ Grid › Tagged data › Wrestling › should display correct score and points tagged from Assist +✅ Grid › Tagged data › Wrestling › should display correct Period tagged from Assist +✅ Grid › Tagged data › Wrestling › should display correct Key Moments tagged from Assist +✅ Grid › Tagged data › Wrestling › should edit cells using the team roster +✅ Grid › Tagged data › Wrestling › should change key moment type and update grid data +``` +### ✅ tests/onboarding.spec.ts +``` +⚪ Grid › Onboarding › Field Visibility › should successfully display field visibility onboarding prompt +⚪ Grid › Onboarding › Field Visibility › Grid Hotkey Tooltip › should successfully display grid hotkey onboarding prompt +⚪ Grid › Onboarding › Field Visibility › Reorder Field Sets › should successfully display field reorder onboarding prompt +⚪ Grid › Onboarding › Field Visibility › Quick Edit › should successfully display quick edit onboarding prompt +``` +### ✅ tests/statsEngine.spec.ts +``` +✅ Mock stats engine for speed › Filter by Offense in Phase card +✅ Mock stats engine for speed › Filter by defense in phase card +✅ Mock stats engine for speed › Key stats card stats appear as expected when opponent is selected +✅ Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - FG percentage for Team in Context +✅ Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - 2FG Makes for Team in Context +✅ Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - 2FG Attempts for Team in Context +✅ Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - 3FG Makes for Team in Context +✅ Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - 3FG Attempts for Team in Context +✅ Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - Off. Rebounds for Team in Context +✅ Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - Def. Rebounds for Team in Context +✅ Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - Assists for Team in Context +✅ Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - Steal for Team in Context +``` \ No newline at end of file diff --git a/__tests__/__snapshots__/java-junit.test.ts.snap b/__tests__/__snapshots__/java-junit.test.ts.snap index e54ce4c..d3482b2 100644 --- a/__tests__/__snapshots__/java-junit.test.ts.snap +++ b/__tests__/__snapshots__/java-junit.test.ts.snap @@ -630,6 +630,636 @@ TestRunResult { } `; +exports[`java-junit tests playwright test report - default options 1`] = ` +TestRunResult { + "path": "fixtures/external/java/playwright-report.xml", + "suites": [ + TestSuiteResult { + "groups": [ + TestGroupResult { + "name": "", + "tests": [ + TestCaseResult { + "error": undefined, + "name": "authenticate as classic admin", + "result": "success", + "time": 1702, + }, + TestCaseResult { + "error": undefined, + "name": "authenticate as basketball admin", + "result": "success", + "time": 1734, + }, + TestCaseResult { + "error": undefined, + "name": "authenticate as wrestling admin", + "result": "success", + "time": 1697, + }, + TestCaseResult { + "error": undefined, + "name": "authenticate as onboarding admin 1", + "result": "success", + "time": 516, + }, + TestCaseResult { + "error": undefined, + "name": "authenticate as onboarding admin 3", + "result": "success", + "time": 527, + }, + TestCaseResult { + "error": undefined, + "name": "authenticate as coachAdmin", + "result": "success", + "time": 526, + }, + ], + }, + ], + "name": "auth.setup.ts", + "totalTime": 6702, + }, + TestSuiteResult { + "groups": [ + TestGroupResult { + "name": "", + "tests": [ + TestCaseResult { + "error": undefined, + "name": "record "Time to Video" when loading directly via URL › using manual timings", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "record "Time to Video" when loading directly via URL › using Performance API mark", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "record "Time to Video" when loading directly via URL › using Performance API measurement", + "result": "skipped", + "time": 0, + }, + ], + }, + ], + "name": "tests/analyze/load-video.spec.ts", + "totalTime": 0, + }, + TestSuiteResult { + "groups": [ + TestGroupResult { + "name": "", + "tests": [ + TestCaseResult { + "error": undefined, + "name": "during looping playback › when clip repeats, it starts at the beginning", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "during sequential playback ("Play All Clips" mode) › when one clip plays through to the next, overlapping video is skipped", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "in 'Play All Clips' mode, clip plays from beginning › when clicked on in navigation module", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "in 'Play All Clips' mode, clip plays from beginning › with next clip button", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "in 'Play All Clips' mode, clip plays from beginning › with previous clip button", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "in 'Loop Clips' mode, clip plays from beginning › when clicked on in navigation module", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "in 'Loop Clips' mode, clip plays from beginning › with next clip button", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "in 'Loop Clips' mode, clip plays from beginning › with previous clip button", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "rewind functions normally", + "result": "skipped", + "time": 12, + }, + ], + }, + ], + "name": "tests/analyze/seamless-video-playback.spec.ts", + "totalTime": 12, + }, + TestSuiteResult { + "groups": [ + TestGroupResult { + "name": "", + "tests": [ + TestCaseResult { + "error": undefined, + "name": "App › logs in and loads page", + "result": "skipped", + "time": 0, + }, + ], + }, + ], + "name": "tests/app.spec.ts", + "totalTime": 0, + }, + TestSuiteResult { + "groups": [ + TestGroupResult { + "name": "", + "tests": [ + TestCaseResult { + "error": undefined, + "name": "Grid › Mobile Web › Athlete › should not be able to edit data", + "result": "success", + "time": 2968, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Mobile Web › Admin or Coach › should be able to edit data", + "result": "success", + "time": 5762, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Field Sets › should update displayed grid columns after editing", + "result": "success", + "time": 9215, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Field Sets › should update displayed clip preview fields after editing", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Basketball Navigation Module › should display correct moment data when filtered by Scout team Points", + "result": "success", + "time": 3150, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Basketball Navigation Module › should display correct moment data when filtered by Opponent Rebounds", + "result": "success", + "time": 5091, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Basketball Navigation Module › should display correct moment data when filtered by Steals", + "result": "success", + "time": 4261, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Basketball Navigation Module › should display correct moment data when filtered by Rebounds", + "result": "success", + "time": 2860, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Basketball Navigation Module › should display clips for opportunities in Period when filtered by Period", + "result": "success", + "time": 3501, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Basketball Navigation Module › should display clips for opportunities that end in a turnover when filtered by Turnovers", + "result": "success", + "time": 3721, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Basketball Navigation Module › should display correct moment data when filtered by 3FG Attempts", + "result": "success", + "time": 3282, + }, + TestCaseResult { + "error": { + "details": " + [chrome] › tests/grid.spec.ts:202:11 › Grid › Column Sorting › AmFb Column Sets › should display correct data when sorting by OFF FORM column › Sort grid by OFF FORM in ascending order + + Test timeout of 10000ms exceeded. + + Error: locator.click: Target closed + =========================== logs =========================== + waiting for locator('[data-qa-id^="column-header-OFF FORM-"]') + ============================================================ + + at ../../../packages/playwright-shared/src/models/locators/table.locator.ts:12 + + 10 | const expectedColumnSort = this.locator.filter({ has: this.page.locator(\`[data-qa-id*='\${sortOrder}']\`) }); + 11 | do { + > 12 | await this.locator.click(); + | ^ + 13 | } while (!expectedColumnSort.isVisible()); + 14 | } + 15 | } + + at TableLocator.sortColumnBy (/Users/connor.vidlock/Documents/GitHub/hudl-frontends/packages/playwright-shared/src/models/locators/table.locator.ts:12:26) + at /Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/models/actions/grid.actions.ts:30:52 + at GridActions.sortColumn (/Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/models/actions/grid.actions.ts:28:16) + at /Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/grid.spec.ts:205:27 + + Pending operations: + - locator.click at ../../packages/playwright-shared/src/models/locators/table.locator.ts:12:26 + + + attachment #1: screenshot (image/png) ────────────────────────────────────────────────────────── + playwright/test-results/tests-grid-Grid-Column-Sorting-AmFb-Column-Set-8f487-ay-correct-data-when-sorting-by-OFF-FORM-column-chrome/test-failed-1.png + ──────────────────────────────────────────────────────────────────────────────────────────────── + + attachment #2: trace (application/zip) ───────────────────────────────────────────────────────── + playwright/test-results/tests-grid-Grid-Column-Sorting-AmFb-Column-Set-8f487-ay-correct-data-when-sorting-by-OFF-FORM-column-chrome/trace.zip + Usage: + + npx playwright show-trace playwright/test-results/tests-grid-Grid-Column-Sorting-AmFb-Column-Set-8f487-ay-correct-data-when-sorting-by-OFF-FORM-column-chrome/trace.zip + + ──────────────────────────────────────────────────────────────────────────────────────────────── + +", + "line": undefined, + "message": undefined, + "path": undefined, + }, + "name": "Grid › Column Sorting › AmFb Column Sets › should display correct data when sorting by OFF FORM column", + "result": "failed", + "time": 10000, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Column Sorting › Wrestling Column Sets › should display correct data when sorting by Period column", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Quick Editor › should be able to edit data from quick editor as an admin or coach", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": { + "details": " + [chrome] › tests/grid.spec.ts:254:9 › Grid › Data Entry › should open select dropdown options when pressing Spacebar in grid cell › double click into column OFF FORM clip number 3 + + Test timeout of 10000ms exceeded. + + Error: locator.dblclick: Target closed + =========================== logs =========================== + waiting for locator('div[data-qa-id=\\'OFF FORM-column-3\\']') + ============================================================ + + at ../../../packages/playwright-shared/src/models/locators/base/base.locator.ts:17 + + 15 | + 16 | async doubleClick() { + > 17 | await this.locator.dblclick(); + | ^ + 18 | } + 19 | + 20 | async getText() { + + at TextInputLocator.doubleClick (/Users/connor.vidlock/Documents/GitHub/hudl-frontends/packages/playwright-shared/src/models/locators/base/base.locator.ts:17:24) + at /Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/models/actions/grid.actions.ts:48:63 + at GridActions.doubleClickIntoGridColumn (/Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/models/actions/grid.actions.ts:47:16) + at /Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/grid.spec.ts:256:25 + + Pending operations: + - locator.dblclick at ../../packages/playwright-shared/src/models/locators/base/base.locator.ts:17:24 + + + attachment #1: screenshot (image/png) ────────────────────────────────────────────────────────── + playwright/test-results/tests-grid-Grid-Data-Entry-should-open-select-dropdown-options-when-pressing-Spacebar-in-grid-cell-chrome/test-failed-1.png + ──────────────────────────────────────────────────────────────────────────────────────────────── + + attachment #2: trace (application/zip) ───────────────────────────────────────────────────────── + playwright/test-results/tests-grid-Grid-Data-Entry-should-open-select-dropdown-options-when-pressing-Spacebar-in-grid-cell-chrome/trace.zip + Usage: + + npx playwright show-trace playwright/test-results/tests-grid-Grid-Data-Entry-should-open-select-dropdown-options-when-pressing-Spacebar-in-grid-cell-chrome/trace.zip + + ──────────────────────────────────────────────────────────────────────────────────────────────── + +", + "line": undefined, + "message": undefined, + "path": undefined, + }, + "name": "Grid › Data Entry › should open select dropdown options when pressing Spacebar in grid cell", + "result": "failed", + "time": 10000, + }, + TestCaseResult { + "error": { + "details": " + [chrome] › tests/grid.spec.ts:261:9 › Grid › Data Entry › should be able to use keyboard to navigate horizontal grid and enter data › double click into column OFF FORM clip number 3 + + Test timeout of 10000ms exceeded. + + Error: locator.dblclick: Target closed + =========================== logs =========================== + waiting for locator('div[data-qa-id=\\'OFF FORM-column-3\\']') + ============================================================ + + at ../../../packages/playwright-shared/src/models/locators/base/base.locator.ts:17 + + 15 | + 16 | async doubleClick() { + > 17 | await this.locator.dblclick(); + | ^ + 18 | } + 19 | + 20 | async getText() { + + at TextInputLocator.doubleClick (/Users/connor.vidlock/Documents/GitHub/hudl-frontends/packages/playwright-shared/src/models/locators/base/base.locator.ts:17:24) + at /Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/models/actions/grid.actions.ts:48:63 + at GridActions.doubleClickIntoGridColumn (/Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/models/actions/grid.actions.ts:47:16) + at /Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/grid.spec.ts:263:25 + + Pending operations: + - locator.dblclick at ../../packages/playwright-shared/src/models/locators/base/base.locator.ts:17:24 + + + attachment #1: screenshot (image/png) ────────────────────────────────────────────────────────── + playwright/test-results/tests-grid-Grid-Data-Entry-should-be-able-to-use-keyboard-to-navigate-horizontal-grid-and-enter-data-chrome/test-failed-1.png + ──────────────────────────────────────────────────────────────────────────────────────────────── + + attachment #2: trace (application/zip) ───────────────────────────────────────────────────────── + playwright/test-results/tests-grid-Grid-Data-Entry-should-be-able-to-use-keyboard-to-navigate-horizontal-grid-and-enter-data-chrome/trace.zip + Usage: + + npx playwright show-trace playwright/test-results/tests-grid-Grid-Data-Entry-should-be-able-to-use-keyboard-to-navigate-horizontal-grid-and-enter-data-chrome/trace.zip + + ──────────────────────────────────────────────────────────────────────────────────────────────── + +", + "line": undefined, + "message": undefined, + "path": undefined, + }, + "name": "Grid › Data Entry › should be able to use keyboard to navigate horizontal grid and enter data", + "result": "failed", + "time": 10000, + }, + TestCaseResult { + "error": { + "details": " + [chrome] › tests/grid.spec.ts:277:9 › Grid › Data Entry › should be able to use keyboard to navigate vertical grid and enter data › Select BUNCH from column OFF FORM list + + Test timeout of 10000ms exceeded. + + Error: locator.click: Target closed + =========================== logs =========================== + waiting for locator('[data-qa-id="clip-edit-field-OFF FORM"]') + ============================================================ + + at ../../../packages/playwright-shared/src/models/locators/base/base.locator.ts:13 + + 11 | + 12 | async click(force: boolean = false) { + > 13 | await this.locator.click({ force }); + | ^ + 14 | } + 15 | + 16 | async doubleClick() { + + at SelectLocator.click (/Users/connor.vidlock/Documents/GitHub/hudl-frontends/packages/playwright-shared/src/models/locators/base/base.locator.ts:13:24) + at /Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/models/actions/grid.actions.ts:93:58 + at GridActions.enterGridSelectValue (/Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/models/actions/grid.actions.ts:92:16) + at /Users/connor.vidlock/Documents/GitHub/hudl-frontends/apps/watch/playwright/tests/grid.spec.ts:279:25 + + Pending operations: + - locator.click at ../../packages/playwright-shared/src/models/locators/base/base.locator.ts:13:24 + + + attachment #1: screenshot (image/png) ────────────────────────────────────────────────────────── + playwright/test-results/tests-grid-Grid-Data-Entry-should-be-able-to-use-keyboard-to-navigate-vertical-grid-and-enter-data-chrome/test-failed-1.png + ──────────────────────────────────────────────────────────────────────────────────────────────── + + attachment #2: trace (application/zip) ───────────────────────────────────────────────────────── + playwright/test-results/tests-grid-Grid-Data-Entry-should-be-able-to-use-keyboard-to-navigate-vertical-grid-and-enter-data-chrome/trace.zip + Usage: + + npx playwright show-trace playwright/test-results/tests-grid-Grid-Data-Entry-should-be-able-to-use-keyboard-to-navigate-vertical-grid-and-enter-data-chrome/trace.zip + + ──────────────────────────────────────────────────────────────────────────────────────────────── + +", + "line": undefined, + "message": undefined, + "path": undefined, + }, + "name": "Grid › Data Entry › should be able to use keyboard to navigate vertical grid and enter data", + "result": "failed", + "time": 10000, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Data Entry › should display error state for input with invalid data", + "result": "success", + "time": 5853, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Data Entry › confirm auto-fill works correctly", + "result": "success", + "time": 5021, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Tagged data › Wrestling › should display correct wrestler names tagged from Assist", + "result": "success", + "time": 2522, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Tagged data › Wrestling › should display correct score and points tagged from Assist", + "result": "success", + "time": 2655, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Tagged data › Wrestling › should display correct Period tagged from Assist", + "result": "success", + "time": 2666, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Tagged data › Wrestling › should display correct Key Moments tagged from Assist", + "result": "success", + "time": 2908, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Tagged data › Wrestling › should edit cells using the team roster", + "result": "success", + "time": 4794, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Tagged data › Wrestling › should change key moment type and update grid data", + "result": "success", + "time": 5662, + }, + ], + }, + ], + "name": "tests/grid.spec.ts", + "totalTime": 115892, + }, + TestSuiteResult { + "groups": [ + TestGroupResult { + "name": "", + "tests": [ + TestCaseResult { + "error": undefined, + "name": "Grid › Onboarding › Field Visibility › should successfully display field visibility onboarding prompt", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Onboarding › Field Visibility › Grid Hotkey Tooltip › should successfully display grid hotkey onboarding prompt", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Onboarding › Field Visibility › Reorder Field Sets › should successfully display field reorder onboarding prompt", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "error": undefined, + "name": "Grid › Onboarding › Field Visibility › Quick Edit › should successfully display quick edit onboarding prompt", + "result": "skipped", + "time": 0, + }, + ], + }, + ], + "name": "tests/onboarding.spec.ts", + "totalTime": 0, + }, + TestSuiteResult { + "groups": [ + TestGroupResult { + "name": "", + "tests": [ + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Filter by Offense in Phase card", + "result": "success", + "time": 3542, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Filter by defense in phase card", + "result": "success", + "time": 2471, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Key stats card stats appear as expected when opponent is selected", + "result": "success", + "time": 3207, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - FG percentage for Team in Context", + "result": "success", + "time": 2932, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - 2FG Makes for Team in Context", + "result": "success", + "time": 3549, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - 2FG Attempts for Team in Context", + "result": "success", + "time": 2802, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - 3FG Makes for Team in Context", + "result": "success", + "time": 2949, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - 3FG Attempts for Team in Context", + "result": "success", + "time": 2937, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - Off. Rebounds for Team in Context", + "result": "success", + "time": 3277, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - Def. Rebounds for Team in Context", + "result": "success", + "time": 2799, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - Assists for Team in Context", + "result": "success", + "time": 3056, + }, + TestCaseResult { + "error": undefined, + "name": "Mock stats engine for speed › Selecting a Key Stats filter updates both the Navigation Module and Insights Module cards - Steal for Team in Context", + "result": "success", + "time": 2850, + }, + ], + }, + ], + "name": "tests/statsEngine.spec.ts", + "totalTime": 36371, + }, + ], + "totalTime": 59092.58599999547, +} +`; + exports[`java-junit tests playwright test report - ignore skipped tests 1`] = ` TestRunResult { "path": "fixtures/external/java/playwright-report.xml", diff --git a/__tests__/java-junit.test.ts b/__tests__/java-junit.test.ts index c0d6011..efa3ba6 100644 --- a/__tests__/java-junit.test.ts +++ b/__tests__/java-junit.test.ts @@ -203,4 +203,25 @@ describe('java-junit tests', () => { fs.mkdirSync(path.dirname(outputPath), {recursive: true}) fs.writeFileSync(outputPath, report) }) + it('playwright test report - default options', async () => { + const fixturePath = path.join(__dirname, 'fixtures', 'external', 'java', 'playwright-report.xml') + const trackedFilesPath = path.join(__dirname, 'fixtures', 'external', 'java', 'files.txt') + const outputPath = path.join(__dirname, '__outputs__', 'playwright-output-default.md') + const filePath = normalizeFilePath(path.relative(__dirname, fixturePath)) + const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'}) + + const trackedFiles = fs.readFileSync(trackedFilesPath, {encoding: 'utf8'}).split(/\n\r?/g) + const opts: ParseOptions = { + parseErrors: true, + trackedFiles + } + + const parser = new JavaJunitParser(opts) + const result = await parser.parse(filePath, fileContent) + expect(result).toMatchSnapshot() + + const report = getReport([result]) + fs.mkdirSync(path.dirname(outputPath), {recursive: true}) + fs.writeFileSync(outputPath, report) + }) })