private Optional<TestResult> findLatest(final List<TestResult> results) { return results.stream() .filter(result -> !result.isHidden()) .min(comparingByTime()); }
private Consumer<TestResult> addRetries(final List<TestResult> results) { return latest -> { final List<RetryItem> retries = results.stream() .sorted(comparingByTime()) .filter(result -> !latest.equals(result)) .map(this::prepareRetry) .map(this::createRetryItem) .collect(Collectors.toList()); latest.addExtraBlock(RETRY_BLOCK_NAME, retries); final Set<Status> statuses = retries.stream() .map(RetryItem::getStatus) .distinct() .collect(Collectors.toSet()); statuses.remove(Status.PASSED); statuses.remove(Status.SKIPPED); latest.setFlaky(!statuses.isEmpty()); }; }
private Optional<TestResult> findLatest(final List<TestResult> results) { return results.stream() .filter(result -> !result.isHidden()) .min(comparingByTime()); }
private Consumer<TestResult> addRetries(final List<TestResult> results) { return latest -> { final List<RetryItem> retries = results.stream() .sorted(comparingByTime()) .filter(result -> !latest.equals(result)) .map(this::prepareRetry) .map(this::createRetryItem) .collect(Collectors.toList()); latest.addExtraBlock(RETRY_BLOCK_NAME, retries); final Set<Status> statuses = retries.stream() .map(RetryItem::getStatus) .distinct() .collect(Collectors.toSet()); statuses.remove(Status.PASSED); statuses.remove(Status.SKIPPED); latest.setFlaky(!statuses.isEmpty()); }; }