From 71b092c850690c952c08989b26a6e76c2a5a56e1 Mon Sep 17 00:00:00 2001 From: Anton Malinskiy Date: Tue, 18 Jun 2024 00:39:07 +1000 Subject: [PATCH] fix(core): filter tests with missing duration from duration and rawDuration --- .../marathon/analytics/internal/sub/ExecutionReport.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/src/main/kotlin/com/malinskiy/marathon/analytics/internal/sub/ExecutionReport.kt b/core/src/main/kotlin/com/malinskiy/marathon/analytics/internal/sub/ExecutionReport.kt index 90ef80a14..70ae0ade0 100644 --- a/core/src/main/kotlin/com/malinskiy/marathon/analytics/internal/sub/ExecutionReport.kt +++ b/core/src/main/kotlin/com/malinskiy/marathon/analytics/internal/sub/ExecutionReport.kt @@ -52,7 +52,8 @@ data class ExecutionReport( }.map { it.test.toTestName() } .toSet() - val duration = tests.map { it.durationMillis() }.sum() + val duration = tests.filter { it.isTimeInfoAvailable } + .sumOf { it.durationMillis() } val rawTests = poolTestEvents .map { it.testResult } @@ -72,8 +73,7 @@ data class ExecutionReport( val rawDuration = rawTests //Incomplete tests mess up the calculations of time since their end time is 0 and duration is, hence, years //We filter here for unavailable time just to be safe - .filter { it.startTime != 0L && it.endTime != 0L } - .map { it.durationMillis() }.sum() + .filter { it.isTimeInfoAvailable }.sumOf { it.durationMillis() } val retries = tests.map { result: TestResult -> Pair(result, poolTestEvents.filter { it.testResult.test == result.test && it.testResult !== result })