From 7d1a0d04c2f660785c4ca022572f62282ca2b622 Mon Sep 17 00:00:00 2001 From: Mavlushechka Date: Thu, 3 Nov 2022 02:02:05 +0500 Subject: Fix Tests comparison fail --- .../com/mavlushechka/a1qa/project/models/Test.java | 28 +++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) (limited to 'src/main/java/com/mavlushechka/a1qa/project/models') diff --git a/src/main/java/com/mavlushechka/a1qa/project/models/Test.java b/src/main/java/com/mavlushechka/a1qa/project/models/Test.java index f7b6a90..8011157 100644 --- a/src/main/java/com/mavlushechka/a1qa/project/models/Test.java +++ b/src/main/java/com/mavlushechka/a1qa/project/models/Test.java @@ -5,14 +5,36 @@ import org.checkerframework.checker.nullness.qual.NonNull; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; +import java.util.Objects; -public record Test(String name, String method, Result latestResult, String latestStartTime, String latestEndTime, String latestDuration) +public record Test(String name, String method, Result status, String startTime, String endTime, String duration) implements Comparable { + public Test { + if (status == Result.IN_PROGRESS) { + status = null; + } + if (Objects.equals(startTime, "")) { + startTime = null; + } + if (Objects.equals(endTime, "")) { + endTime = null; + } + } + @Override public int compareTo(@NonNull Test test) { - return LocalDateTime.parse(latestStartTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.S")) - .compareTo(LocalDateTime.parse(test.latestStartTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.S"))); + if (startTime == null && test.startTime == null) { + return 0; + } + if (startTime == null) { + return -1; + } + if (test.startTime == null) { + return 1; + } + return LocalDateTime.parse(startTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.S")) + .compareTo(LocalDateTime.parse(test.startTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.S"))); } } -- cgit v1.2.3