@Test public void urlNull() { when(urlConnection.getURL()).thenReturn(null); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(urlConnection, null, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(0)); verifyZeroInteractions(rsc); }
@Test public void nullRequestLine() { when(httpRequest.getRequestLine()).thenReturn(null); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(object, new Object[] { null, httpRequest }, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(0)); verifyZeroInteractions(object, rsc); }
@Test public void urlUriNull() { when(httpRequest.getURI()).thenReturn(null); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(httpRequest, null, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(0)); verifyNoMoreInteractions(rsc); }
@Test public void methodNull() { when(httpRequest.getMethod()).thenReturn(null); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(httpRequest, null, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(0)); verifyNoMoreInteractions(rsc); }
@Test public void url() throws MalformedURLException { String uri = "http://localhost"; when(urlConnection.getURL()).thenReturn(new URL(uri)); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(urlConnection, null, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(1)); assertThat(tags, hasEntry(Tags.HTTP_URL.getKey(), uri)); verifyZeroInteractions(rsc); }
@Test public void destinationException() throws Exception { when(message.getJMSDestination()).thenThrow(new Exception()); when(rsc.getParameterTypes()).thenReturn(Collections.singletonList("javax.jms.Message")); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(object, new Object[] { message }, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(0)); verifyZeroInteractions(object); }
@Test public void messageIdException() throws Exception { when(message.getJMSMessageID()).thenThrow(new Exception()); when(rsc.getParameterTypes()).thenReturn(Collections.singletonList("javax.jms.Message")); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(object, new Object[] { message }, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(0)); verifyZeroInteractions(object); }
@Test public void destinationNull() throws Exception { when(message.getJMSDestination()).thenReturn(null); when(rsc.getParameterTypes()).thenReturn(Collections.singletonList("javax.jms.Message")); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(object, new Object[] { message }, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(0)); verifyZeroInteractions(object); }
@Test public void destination() throws Exception { String destination = "destination"; when(message.getJMSDestination()).thenReturn(jmsDestination); when(jmsDestination.toString()).thenReturn(destination); when(rsc.getParameterTypes()).thenReturn(Collections.singletonList("javax.jms.Message")); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(object, new Object[] { message }, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(1)); assertThat(tags, hasEntry(ExtraTags.JMS_MESSAGE_DESTINATION, destination)); verifyZeroInteractions(object); }
@Test public void messageId() throws Exception { String id = "id"; when(message.getJMSMessageID()).thenReturn(id); when(rsc.getParameterTypes()).thenReturn(Collections.singletonList("javax.jms.Message")); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(object, new Object[] { message }, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(1)); assertThat(tags, hasEntry(ExtraTags.JMS_MESSAGE_ID, id)); verifyZeroInteractions(object); }
@Test public void method() throws MalformedURLException { String method = "GET"; when(urlConnection.getRequestMethod()).thenReturn(method); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(urlConnection, null, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(1)); assertThat(tags, hasEntry(Tags.HTTP_METHOD.getKey(), method)); verifyZeroInteractions(rsc); }
@Test public void method() { String method = "get"; when(requestLine.getMethod()).thenReturn(method); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(object, new Object[] { null, httpRequest }, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(1)); assertThat(tags, hasEntry(Tags.HTTP_METHOD.getKey(), method)); verifyZeroInteractions(object, rsc); }
@Test public void url() throws Exception { String uri = "http://localhost"; when(httpRequest.getURI()).thenReturn(new URI(uri)); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(httpRequest, null, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(1)); assertThat(tags, hasEntry(Tags.HTTP_URL.getKey(), uri)); verifyNoMoreInteractions(rsc); }
@Test public void method() throws Exception { String method = "GET"; when(httpRequest.getMethod()).thenReturn(method); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(httpRequest, null, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(1)); assertThat(tags, hasEntry(Tags.HTTP_METHOD.getKey(), method)); verifyNoMoreInteractions(rsc); }
@Test public void url() { String uri = "uri"; when(requestLine.getUri()).thenReturn(uri); ClientRequestAdapter<TextMap> adapter = sensor.getClientRequestAdapter(object, new Object[] { null, httpRequest }, rsc); Map<String, String> tags = adapter.getTags(); assertThat(tags.size(), is(1)); assertThat(tags, hasEntry(Tags.HTTP_URL.getKey(), uri)); verifyZeroInteractions(object, rsc); }
@Test public void tagsNull() { when(requestAdapter.startClientSpan()).thenReturn(true); when(requestAdapter.getTags()).thenReturn(null); when(requestAdapter.getPropagationType()).thenReturn(PropagationType.HTTP); when(requestAdapter.getReferenceType()).thenReturn(References.CHILD_OF); SpanImpl result = interceptor.handleRequest(requestAdapter); assertThat(result, is(span)); verify(tracer).buildSpan(null, References.CHILD_OF, true); verify(tracer).inject(context, Format.Builtin.TEXT_MAP, carrier); verify(spanBuilder).doNotReport(); verify(spanBuilder).withTag(Tags.SPAN_KIND.getKey(), Tags.SPAN_KIND_CLIENT); verify(spanBuilder).withTag(ExtraTags.PROPAGATION_TYPE, PropagationType.HTTP.toString()); verify(spanBuilder).start(); verify(span).context(); verifyNoMoreInteractions(tracer, spanBuilder, span); verifyZeroInteractions(context); }
@Test public void happyPath() { when(requestAdapter.startClientSpan()).thenReturn(true); when(requestAdapter.getTags()).thenReturn(Collections.<String, String> singletonMap(Tags.HTTP_URL.getKey(), "value")); when(requestAdapter.getPropagationType()).thenReturn(PropagationType.HTTP); when(requestAdapter.getReferenceType()).thenReturn(References.CHILD_OF); SpanImpl result = interceptor.handleRequest(requestAdapter); assertThat(result, is(span)); verify(tracer).buildSpan(null, References.CHILD_OF, true); verify(tracer).inject(context, Format.Builtin.TEXT_MAP, carrier); verify(spanBuilder).doNotReport(); verify(spanBuilder).withTag(Tags.SPAN_KIND.getKey(), Tags.SPAN_KIND_CLIENT); verify(spanBuilder).withTag(ExtraTags.PROPAGATION_TYPE, PropagationType.HTTP.toString()); verify(spanBuilder).withTag(Tags.HTTP_URL.getKey(), "value"); verify(spanBuilder).start(); verify(span).context(); verifyNoMoreInteractions(tracer, spanBuilder, span); verifyZeroInteractions(context); }
Map<String, String> tags = requestAdapter.getTags(); if (MapUtils.isNotEmpty(tags)) { for (Map.Entry<String, String> e : tags.entrySet()) {