From e85b2a78bc42aaf4d5f1c60e9a785d8d1bf114ac Mon Sep 17 00:00:00 2001 From: Marcin Grzejszczak Date: Mon, 29 Jan 2018 10:37:49 +0100 Subject: [PATCH] Fixing some tests --- .../sleuth/instrument/web/TraceFilter.java | 4 +++- .../instrument/opentracing/BraveTracerTest.java | 10 ---------- .../instrument/reactor/SpanSubscriberTests.java | 1 + .../web/TraceFilterWebIntegrationTests.java | 17 ++++++++++++----- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/web/TraceFilter.java b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/web/TraceFilter.java index 4773fab11..17cae9501 100644 --- a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/web/TraceFilter.java +++ b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/web/TraceFilter.java @@ -240,7 +240,9 @@ public class TraceFilter extends GenericFilterBean { log.debug("Will close span " + span + " since " + (shouldCloseSpan(request) ? "some component marked it for closure" : "response was unsuccessful for the root span")); } handler().handleSend(response, exception, span); - clearTraceAttribute(request); + if (shouldCloseSpan(request)) { + clearTraceAttribute(request); + } } else if (span != null || requestHasAlreadyBeenHandled(request)) { if (log.isDebugEnabled()) { log.debug("Detaching the span " + span + " since the response was unsuccessful"); diff --git a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/opentracing/BraveTracerTest.java b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/opentracing/BraveTracerTest.java index e84c58d4f..27bae0ae6 100644 --- a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/opentracing/BraveTracerTest.java +++ b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/opentracing/BraveTracerTest.java @@ -151,16 +151,6 @@ public class BraveTracerTest { .sampled(true).build()); } - @Test public void extractTraceContextReturnsNull() throws Exception { - Map map = new LinkedHashMap<>(); - map.put("other", "1"); - - BraveSpanContext openTracingContext = opentracing.extract(Format.Builtin.HTTP_HEADERS, - new TextMapExtractAdapter(map)); - - assertThat(openTracingContext).isNull(); - } - @Test public void injectTraceContext_baggage() throws Exception { BraveSpan span = opentracing.buildSpan("foo").start(); span.setBaggageItem("country-code", "FO"); diff --git a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/reactor/SpanSubscriberTests.java b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/reactor/SpanSubscriberTests.java index 7aae149ff..5a82ae1d0 100644 --- a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/reactor/SpanSubscriberTests.java +++ b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/reactor/SpanSubscriberTests.java @@ -6,6 +6,7 @@ import brave.Span; import brave.Tracer; import brave.Tracing; import brave.sampler.Sampler; +import org.junit.BeforeClass; import reactor.core.publisher.BaseSubscriber; import reactor.core.publisher.Flux; import reactor.core.publisher.Hooks; diff --git a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/TraceFilterWebIntegrationTests.java b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/TraceFilterWebIntegrationTests.java index 1231fd897..812e897b0 100644 --- a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/TraceFilterWebIntegrationTests.java +++ b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/web/TraceFilterWebIntegrationTests.java @@ -80,13 +80,20 @@ public class TraceFilterWebIntegrationTests { } then(Tracing.current().tracer().currentSpan()).isNull(); - then(this.accumulator.getSpans()).hasSize(1); - Span reportedSpan = this.accumulator.getSpans().get(0); - then(reportedSpan.tags()) + then(this.accumulator.getSpans()).hasSize(2); + Span fromFirstTraceFilterFlow = this.accumulator.getSpans().get(0); + then(fromFirstTraceFilterFlow.tags()) .containsEntry("http.status_code", "500") - .containsEntry("error", "Request processing failed; nested exception is java.lang.RuntimeException: Throwing exception"); + .containsEntry("http.method", "GET") + .containsEntry("error", "Request processing failed; nested exception is java.lang.RuntimeException: Throwing exception") + .containsEntry("mvc.controller.class", "ExceptionThrowingController"); + Span fromErrorController = this.accumulator.getSpans().get(1); + then(fromErrorController.tags()) + .containsEntry("http.status_code", "500") + .containsEntry("error", "Request processing failed; nested exception is java.lang.RuntimeException: Throwing exception") + .containsEntry("mvc.controller.class", "BasicErrorController"); // issue#714 - String hex = reportedSpan.traceId(); + String hex = fromErrorController.traceId(); String[] split = capture.toString().split("\n"); List list = Arrays.stream(split).filter(s -> s.contains( "Uncaught exception thrown"))