diff --git a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/assertions/SleuthAssertions.java b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/assertions/SleuthAssertions.java new file mode 100644 index 000000000..6a73c118b --- /dev/null +++ b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/assertions/SleuthAssertions.java @@ -0,0 +1,12 @@ +package org.springframework.cloud.sleuth.assertions; + +import org.assertj.core.api.BDDAssertions; +import org.springframework.cloud.sleuth.Span; + +public class SleuthAssertions extends BDDAssertions { + + public static SpanAssert then(Span actual) { + return new SpanAssert(actual); + } + +} diff --git a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/assertions/SpanAssert.java b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/assertions/SpanAssert.java new file mode 100644 index 000000000..56420aa86 --- /dev/null +++ b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/assertions/SpanAssert.java @@ -0,0 +1,33 @@ +package org.springframework.cloud.sleuth.assertions; + +import java.util.Objects; + +import org.assertj.core.api.AbstractAssert; +import org.springframework.cloud.sleuth.Span; + +public class SpanAssert extends AbstractAssert { + + public SpanAssert(Span actual) { + super(actual, SpanAssert.class); + } + + public static SpanAssert then(Span actual) { + return new SpanAssert(actual); + } + + public SpanAssert hasTraceId(String traceId) { + isNotNull(); + if (!Objects.equals(actual.getTraceId(), traceId)) { + failWithMessage("Expected span's traceId to be <%s> but was <%s>", traceId, actual.getTraceId()); + } + return this; + } + + public SpanAssert hasNameNotEqualTo(String name) { + isNotNull(); + if (Objects.equals(actual.getName(), name)) { + failWithMessage("Expected span's name not to be <%s> but was <%s>", name, actual.getName()); + } + return this; + } +} \ No newline at end of file diff --git a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/hystrix/JavanicaITest.java b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/hystrix/JavanicaITest.java index 32789e6d8..df065914c 100644 --- a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/hystrix/JavanicaITest.java +++ b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/hystrix/JavanicaITest.java @@ -1,6 +1,6 @@ package org.springframework.cloud.sleuth.instrument.hystrix; -import static org.assertj.core.api.BDDAssertions.then; +import static org.springframework.cloud.sleuth.assertions.SleuthAssertions.then; import java.util.concurrent.atomic.AtomicReference; @@ -54,10 +54,9 @@ public class JavanicaITest { Awaitility.await().until(new Runnable() { @Override public void run() { - then(span.getTraceId()).isNotNull() - .isEqualTo(javanicaClass.getTraceId()); - then(span.getName()) - .isNotEqualTo(javanicaClass.getSpanName()); + then(span) + .hasTraceId(javanicaClass.getTraceId()) + .hasNameNotEqualTo(javanicaClass.getSpanName()); } }); } diff --git a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/TraceAsyncITest.java b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/TraceAsyncITest.java index 619b1697c..745a05e88 100644 --- a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/TraceAsyncITest.java +++ b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/TraceAsyncITest.java @@ -1,7 +1,7 @@ package org.springframework.cloud.sleuth.instrument.web; -import static org.assertj.core.api.BDDAssertions.then; +import static org.springframework.cloud.sleuth.assertions.SleuthAssertions.then; import java.util.concurrent.atomic.AtomicReference; @@ -55,10 +55,9 @@ public class TraceAsyncITest { Awaitility.await().until(new Runnable() { @Override public void run() { - then(span.getTraceId()).isNotNull() - .isEqualTo(TraceAsyncITest.this.asyncClass.getTraceId()); - then(span.getName()) - .isNotEqualTo(TraceAsyncITest.this.asyncClass.getSpanName()); + then(span) + .hasTraceId(asyncClass.getTraceId()) + .hasNameNotEqualTo(asyncClass.getSpanName()); } }); }