Skip to content

Commit ab61cbb

Browse files
committed
test: add responseHeadersReceived tests to SpanTracerTest
1 parent 097e5ee commit ab61cbb

1 file changed

Lines changed: 40 additions & 0 deletions

File tree

gax-java/gax/src/test/java/com/google/api/gax/tracing/SpanTracerTest.java

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,4 +86,44 @@ void testAttemptStarted_includesLanguageAttribute() {
8686
io.opentelemetry.api.common.AttributeKey.stringKey(SpanTracer.LANGUAGE_ATTRIBUTE),
8787
SpanTracer.DEFAULT_LANGUAGE);
8888
}
89+
90+
@Test
91+
void testResponseHeadersReceived_setsContentLengthAttribute() {
92+
spanTracer.attemptStarted(new Object(), 1);
93+
94+
java.util.Map<String, Object> headers = new java.util.HashMap<>();
95+
headers.put("Content-Length", 12345L);
96+
spanTracer.responseHeadersReceived(headers);
97+
98+
verify(span).setAttribute(ObservabilityAttributes.HTTP_RESPONSE_BODY_SIZE, 12345L);
99+
}
100+
101+
@Test
102+
void testResponseHeadersReceived_variousContentLengthStringFormats() {
103+
spanTracer.attemptStarted(new Object(), 1);
104+
105+
java.util.Map<String, Object> headers = new java.util.HashMap<>();
106+
headers.put("content-length", "6789");
107+
spanTracer.responseHeadersReceived(headers);
108+
109+
verify(span).setAttribute(ObservabilityAttributes.HTTP_RESPONSE_BODY_SIZE, 6789L);
110+
}
111+
112+
@Test
113+
void testResponseHeadersReceived_invalidOrMissingContentLength() {
114+
spanTracer.attemptStarted(new Object(), 1);
115+
116+
java.util.Map<String, Object> headers = new java.util.HashMap<>();
117+
headers.put("Content-Length", "invalid");
118+
spanTracer.responseHeadersReceived(headers);
119+
120+
headers.clear();
121+
headers.put("Other-Header", "123");
122+
spanTracer.responseHeadersReceived(headers);
123+
124+
verify(span, org.mockito.Mockito.never())
125+
.setAttribute(
126+
org.mockito.ArgumentMatchers.eq(ObservabilityAttributes.HTTP_RESPONSE_BODY_SIZE),
127+
org.mockito.ArgumentMatchers.anyLong());
128+
}
89129
}

0 commit comments

Comments
 (0)