From 1230591b37165b5f15a954fd2543ed0b8071e885 Mon Sep 17 00:00:00 2001 From: Roman Kuznetsov Date: Wed, 2 Apr 2025 17:45:52 +0300 Subject: [PATCH] fix: html-reporter gui playwright test launch (step.startTime.getTime) --- lib/adapters/test-result/playwright.ts | 2 +- .../lib/adapters/test-result/playwright.ts | 21 +++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/lib/adapters/test-result/playwright.ts b/lib/adapters/test-result/playwright.ts index e1e62d339..5b6dffaee 100644 --- a/lib/adapters/test-result/playwright.ts +++ b/lib/adapters/test-result/playwright.ts @@ -159,7 +159,7 @@ const getHistory = (steps?: PlaywrightTestResult['steps']): TestStepCompressed[] [TestStepKey.Name]: step.title, [TestStepKey.Args]: [], [TestStepKey.IsFailed]: Boolean(step.error), - [TestStepKey.TimeStart]: step.startTime.getTime(), + [TestStepKey.TimeStart]: step.startTime instanceof Date ? step.startTime.getTime() : new Date(step.startTime).getTime(), [TestStepKey.Duration]: step.duration, [TestStepKey.Children]: getHistory(step.steps), [TestStepKey.IsGroup]: step.steps?.length > 0 diff --git a/test/unit/lib/adapters/test-result/playwright.ts b/test/unit/lib/adapters/test-result/playwright.ts index f9fb0b228..2686912b8 100644 --- a/test/unit/lib/adapters/test-result/playwright.ts +++ b/test/unit/lib/adapters/test-result/playwright.ts @@ -168,6 +168,27 @@ describe('PlaywrightTestResultAdapter', () => { assert.deepEqual(adapter.history, expectedHistory); }); + + it('should work if step.startTime is ISO datetime string', () => { + const steps = [ + {title: 'Step1', duration: 100, startTime: new Date(1000).toISOString()}, + {title: 'Step2', duration: 200, startTime: new Date(2000).toISOString()} + ]; + const adapter = new PlaywrightTestResultAdapter(mkTestCase(), mkTestResult({steps} as any), UNKNOWN_ATTEMPT); + const expectedHistory = [mkTestStepCompressed({ + [TestStepKey.Name]: 'Step1', + [TestStepKey.Duration]: 100, + [TestStepKey.TimeStart]: 1000, + [TestStepKey.Children]: [] + }), mkTestStepCompressed({ + [TestStepKey.Name]: 'Step2', + [TestStepKey.Duration]: 200, + [TestStepKey.TimeStart]: 2000, + [TestStepKey.Children]: [] + })]; + + assert.deepEqual(adapter.history, expectedHistory); + }); }); describe('id', () => {