Skip to content

Commit

Permalink
Add test to verify ZipkinRestTemplateBuilderCustomizer
Browse files Browse the repository at this point in the history
  • Loading branch information
mhalbritter committed Nov 29, 2022
1 parent b3878e8 commit cfaade9
Showing 1 changed file with 27 additions and 1 deletion.
Expand Up @@ -16,6 +16,13 @@

package org.springframework.boot.actuate.autoconfigure.tracing.zipkin;

import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.concurrent.TimeUnit;

import okhttp3.mockwebserver.MockResponse;
import okhttp3.mockwebserver.MockWebServer;
import okhttp3.mockwebserver.RecordedRequest;
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentMatchers;
import zipkin2.reporter.Sender;
Expand Down Expand Up @@ -140,6 +147,25 @@ void shouldBackOffOnCustomBeans() {
});
}

@Test
void shouldApplyZipkinRestTemplateBuilderCustomizers() throws IOException {
try (MockWebServer mockWebServer = new MockWebServer()) {
mockWebServer.enqueue(new MockResponse().setResponseCode(204));
this.reactiveContextRunner
.withPropertyValues("management.zipkin.tracing.endpoint=" + mockWebServer.url("/"))
.withUserConfiguration(RestTemplateConfiguration.class)
.withClassLoader(new FilteredClassLoader(URLConnectionSender.class, WebClient.class))
.run((context) -> {
assertThat(context).hasSingleBean(ZipkinRestTemplateSender.class);
ZipkinRestTemplateSender sender = context.getBean(ZipkinRestTemplateSender.class);
sender.sendSpans("spans".getBytes(StandardCharsets.UTF_8)).execute();
RecordedRequest recordedRequest = mockWebServer.takeRequest(1, TimeUnit.SECONDS);
assertThat(recordedRequest).isNotNull();
assertThat(recordedRequest.getHeaders().get("x-dummy")).isEqualTo("dummy");
});
}
}

@Configuration(proxyBeanMethods = false)
private static class RestTemplateConfiguration {

Expand Down Expand Up @@ -174,7 +200,7 @@ private static class DummyZipkinRestTemplateBuilderCustomizer implements ZipkinR

@Override
public RestTemplateBuilder customize(RestTemplateBuilder restTemplateBuilder) {
return restTemplateBuilder;
return restTemplateBuilder.defaultHeader("x-dummy", "dummy");
}

}
Expand Down

0 comments on commit cfaade9

Please sign in to comment.