diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/com/mavlushechka/a1qa/project/models/Test.java | 28 |
1 files changed, 25 insertions, 3 deletions
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<Test> { + 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"))); } } |