From b61be0486643aceab35a794b96378f29fa9f4c9d Mon Sep 17 00:00:00 2001 From: Marcin Grzejszczak Date: Mon, 19 Dec 2016 10:19:52 +0100 Subject: [PATCH] Fixing race conditions in tests --- .../client/TraceWebAsyncClientAutoConfigurationTests.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/client/TraceWebAsyncClientAutoConfigurationTests.java b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/client/TraceWebAsyncClientAutoConfigurationTests.java index 01a0fe8af..36360da14 100644 --- a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/client/TraceWebAsyncClientAutoConfigurationTests.java +++ b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/client/TraceWebAsyncClientAutoConfigurationTests.java @@ -18,6 +18,7 @@ package org.springframework.cloud.sleuth.instrument.web.client; import java.io.IOException; import java.net.URI; +import java.util.ArrayList; import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; @@ -185,7 +186,7 @@ public class TraceWebAsyncClientAutoConfigurationTests { String result = future.get().getBody(); then(result).isEqualTo("foo"); - then(this.accumulator.getSpans().stream().filter( + then(new ArrayList<>(this.accumulator.getSpans()).stream().filter( span -> span.logs().stream().filter(log -> Span.CLIENT_RECV.equals(log.getEvent())).findFirst().isPresent() ).findFirst().get()).matches(span -> span.getAccumulatedMicros() >= TimeUnit.MILLISECONDS.toMicros(100)); then(this.tracer.getCurrentSpan()).isNull(); @@ -206,7 +207,7 @@ public class TraceWebAsyncClientAutoConfigurationTests { } Awaitility.await().until(() -> { - then(this.accumulator.getSpans().stream() + then(new ArrayList<>(this.accumulator.getSpans()).stream() .filter(span -> span.logs().stream().filter(log -> Span.CLIENT_RECV.equals(log.getEvent())) .findFirst().isPresent()).findFirst().get()).matches( span -> span.getAccumulatedMicros() >= TimeUnit.MILLISECONDS.toMicros(100))