Skip to content

Commit 5620b9e

Browse files
committed
test: Add more tests
1 parent ae762eb commit 5620b9e

File tree

1 file changed

+25
-1
lines changed

1 file changed

+25
-1
lines changed

src/test/java/com/spotify/github/tracing/OpenTelemetryTracerTest.java

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,20 +35,28 @@
3535
import io.opentelemetry.sdk.trace.data.SpanData;
3636
import io.opentelemetry.sdk.trace.export.SimpleSpanProcessor;
3737
import io.opentelemetry.sdk.trace.samplers.Sampler;
38+
import okhttp3.Call;
39+
import okhttp3.Interceptor;
40+
import okhttp3.OkHttpClient;
3841
import org.junit.jupiter.api.AfterEach;
3942
import org.junit.jupiter.api.BeforeAll;
4043
import org.junit.jupiter.api.Test;
4144

45+
import java.io.IOException;
46+
import java.util.LinkedList;
4247
import java.util.List;
4348
import java.util.concurrent.CompletableFuture;
4449

4550
import static org.junit.jupiter.api.Assertions.assertEquals;
51+
import static org.junit.jupiter.api.Assertions.assertNotNull;
52+
import static org.mockito.Mockito.mock;
53+
import static org.mockito.Mockito.when;
4654

4755
public class OpenTelemetryTracerTest {
4856

4957
private final String rootSpanName = "root span";
5058
private static OtTestExportHandler spanExporterHandler;
51-
private OpenTelemetry openTelemetry= GlobalOpenTelemetry.get();
59+
private OpenTelemetry openTelemetry = GlobalOpenTelemetry.get();
5260
private Tracer tracer = openTelemetry.getTracer("github-java-client-test");
5361

5462
/**
@@ -108,6 +116,22 @@ public void testTrace_CompletionStage_Fails() throws Exception {
108116
assertEquals(StatusCode.UNSET, inner.getStatus().getStatusCode());
109117
}
110118

119+
@Test
120+
public void test_createTracedClient() throws IOException {
121+
OpenTelemetryTracer tracer = new OpenTelemetryTracer(openTelemetry);
122+
OkHttpClient.Builder mockBuilder = mock(OkHttpClient.Builder.class);
123+
OkHttpClient mockClient = mock(OkHttpClient.class);
124+
LinkedList<Interceptor> interceptors = new LinkedList<>();
125+
when(mockClient.newBuilder()).thenReturn(mockBuilder);
126+
when(mockBuilder.build()).thenReturn(mockClient);
127+
when(mockBuilder.interceptors()).thenReturn(interceptors);
128+
when(mockBuilder.networkInterceptors()).thenReturn(interceptors);
129+
Call.Factory callFactory = tracer.createTracedClient(mockClient);
130+
assertNotNull(callFactory);
131+
assertEquals("class io.opentelemetry.instrumentation.okhttp.v3_0.TracingCallFactory", callFactory.getClass().toString());
132+
assertEquals(3, interceptors.size());
133+
}
134+
111135
private Span startRootSpan() {
112136
Span rootSpan = tracer.spanBuilder(rootSpanName).startSpan();
113137
Context context = Context.current().with(rootSpan);

0 commit comments

Comments
 (0)