Support library instrumentations with HttpServerTest & HttpClientTest (#2299)

This commit is contained in:
Mateusz Rzeszutek 2021-02-16 18:05:23 +01:00 committed by GitHub
parent 33195bde8b
commit ee090aee1e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
64 changed files with 136 additions and 76 deletions

View File

@ -11,12 +11,13 @@ import akka.http.javadsl.model.HttpMethods
import akka.http.javadsl.model.HttpRequest
import akka.http.javadsl.model.headers.RawHeader
import akka.stream.ActorMaterializer
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class AkkaHttpClientInstrumentationTest extends HttpClientTest {
class AkkaHttpClientInstrumentationTest extends HttpClientTest implements AgentTestTrait {
@Shared
ActorSystem system = ActorSystem.create()

View File

@ -3,9 +3,10 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpServerTest
abstract class AkkaHttpServerInstrumentationTest extends HttpServerTest<Object> {
abstract class AkkaHttpServerInstrumentationTest extends HttpServerTest<Object> implements AgentTestTrait {
@Override
boolean testExceptionBody() {

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.util.concurrent.CompletableFuture
import org.apache.http.HttpResponse
@ -15,7 +16,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class ApacheHttpAsyncClientCallbackTest extends HttpClientTest {
class ApacheHttpAsyncClientCallbackTest extends HttpClientTest implements AgentTestTrait {
@Shared
RequestConfig requestConfig = RequestConfig.custom()

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.util.concurrent.Future
import org.apache.http.client.config.RequestConfig
@ -13,7 +14,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class ApacheHttpAsyncClientNullCallbackTest extends HttpClientTest {
class ApacheHttpAsyncClientNullCallbackTest extends HttpClientTest implements AgentTestTrait {
@Shared
RequestConfig requestConfig = RequestConfig.custom()

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.util.concurrent.CountDownLatch
import org.apache.http.HttpResponse
@ -15,7 +16,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class ApacheHttpAsyncClientTest extends HttpClientTest {
class ApacheHttpAsyncClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
RequestConfig requestConfig = RequestConfig.custom()

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import org.apache.commons.httpclient.HttpClient
import org.apache.commons.httpclient.HttpMethod
@ -17,7 +18,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class CommonsHttpClientTest extends HttpClientTest {
class CommonsHttpClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
HttpClient client = new HttpClient()

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import org.apache.http.HttpResponse
import org.apache.http.client.ResponseHandler
@ -14,7 +15,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class ApacheHttpClientResponseHandlerTest extends HttpClientTest {
class ApacheHttpClientResponseHandlerTest extends HttpClientTest implements AgentTestTrait {
@Shared
def client = new DefaultHttpClient()

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import org.apache.http.HttpHost
import org.apache.http.HttpRequest
@ -16,7 +17,7 @@ import org.apache.http.protocol.BasicHttpContext
import spock.lang.Shared
import spock.lang.Timeout
abstract class ApacheHttpClientTest<T extends HttpRequest> extends HttpClientTest {
abstract class ApacheHttpClientTest<T extends HttpRequest> extends HttpClientTest implements AgentTestTrait {
@Shared
def client = new DefaultHttpClient()

View File

@ -9,11 +9,12 @@ import com.ning.http.client.Request
import com.ning.http.client.RequestBuilder
import com.ning.http.client.Response
import com.ning.http.client.uri.Uri
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import spock.lang.AutoCleanup
import spock.lang.Shared
class AsyncHttpClientTest extends HttpClientTest {
class AsyncHttpClientTest extends HttpClientTest implements AgentTestTrait {
@AutoCleanup
@Shared

View File

@ -18,18 +18,19 @@ import io.dropwizard.setup.Bootstrap
import io.dropwizard.setup.Environment
import io.dropwizard.testing.ConfigOverride
import io.dropwizard.testing.DropwizardTestSupport
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.instrumentation.test.utils.PortUtils
import io.opentelemetry.sdk.trace.data.SpanData
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import javax.ws.rs.GET
import javax.ws.rs.Path
import javax.ws.rs.PathParam
import javax.ws.rs.QueryParam
import javax.ws.rs.core.Response
class DropwizardTest extends HttpServerTest<DropwizardTestSupport> {
class DropwizardTest extends HttpServerTest<DropwizardTestSupport> implements AgentTestTrait {
@Override
DropwizardTestSupport startServer(int port) {

View File

@ -13,11 +13,12 @@ import com.twitter.util.Await
import com.twitter.util.Closable
import com.twitter.util.Duration
import com.twitter.util.Promise
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
class FinatraServerLatestTest extends HttpServerTest<HttpServer> {
class FinatraServerLatestTest extends HttpServerTest<HttpServer> implements AgentTestTrait {
private static final Duration TIMEOUT = Duration.fromSeconds(5)
private static final Duration STARTUP_TIMEOUT = Duration.fromSeconds(20)

View File

@ -10,12 +10,13 @@ import com.twitter.finatra.http.HttpServer
import com.twitter.util.Await
import com.twitter.util.Closable
import com.twitter.util.Duration
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
import java.util.concurrent.TimeoutException
class FinatraServerTest extends HttpServerTest<HttpServer> {
class FinatraServerTest extends HttpServerTest<HttpServer> implements AgentTestTrait {
private static final Duration TIMEOUT = Duration.fromSeconds(5)
private static final long STARTUP_TIMEOUT = 40 * 1000

View File

@ -9,11 +9,12 @@ import com.google.api.client.http.GenericUrl
import com.google.api.client.http.HttpRequest
import com.google.api.client.http.HttpResponse
import com.google.api.client.http.javanet.NetHttpTransport
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import spock.lang.Shared
abstract class AbstractGoogleHttpClientTest extends HttpClientTest {
abstract class AbstractGoogleHttpClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
def requestFactory = new NetHttpTransport().createRequestFactory()

View File

@ -16,6 +16,7 @@ import static java.nio.charset.Charset.defaultCharset
import static java.util.concurrent.TimeUnit.MILLISECONDS
import static org.glassfish.grizzly.memory.Buffers.wrap
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import java.util.concurrent.Executors
import org.glassfish.grizzly.filterchain.BaseFilter
@ -36,7 +37,7 @@ import org.glassfish.grizzly.nio.transport.TCPNIOTransportBuilder
import org.glassfish.grizzly.utils.DelayedExecutor
import org.glassfish.grizzly.utils.IdleTimeoutFilter
class GrizzlyFilterchainServerTest extends HttpServerTest<HttpServer> {
class GrizzlyFilterchainServerTest extends HttpServerTest<HttpServer> implements AgentTestTrait {
private TCPNIOTransport transport
private TCPNIOServerConnection serverConnection

View File

@ -9,6 +9,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import javax.ws.rs.GET
import javax.ws.rs.NotFoundException
@ -22,7 +23,7 @@ import org.glassfish.grizzly.http.server.Request
import org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory
import org.glassfish.jersey.server.ResourceConfig
class GrizzlyTest extends HttpServerTest<HttpServer> {
class GrizzlyTest extends HttpServerTest<HttpServer> implements AgentTestTrait {
@Override
HttpServer startServer(int port) {

View File

@ -3,11 +3,12 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import spock.lang.Timeout
@Timeout(5)
class HttpUrlConnectionResponseCodeOnlyTest extends HttpClientTest {
class HttpUrlConnectionResponseCodeOnlyTest extends HttpClientTest implements AgentTestTrait {
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {

View File

@ -7,15 +7,16 @@ import static io.opentelemetry.api.trace.SpanKind.CLIENT
import static io.opentelemetry.instrumentation.test.utils.TraceUtils.runUnderTrace
import io.opentelemetry.api.trace.Span
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import spock.lang.Ignore
import spock.lang.Requires
import spock.lang.Timeout
import sun.net.www.protocol.https.HttpsURLConnectionImpl
@Timeout(5)
class HttpUrlConnectionTest extends HttpClientTest {
class HttpUrlConnectionTest extends HttpClientTest implements AgentTestTrait {
static final RESPONSE = "Hello."
static final STATUS = 200

View File

@ -4,11 +4,12 @@
*/
import io.opentelemetry.api.trace.Span
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import spock.lang.Timeout
@Timeout(5)
class HttpUrlConnectionUseCachesFalseTest extends HttpClientTest {
class HttpUrlConnectionUseCachesFalseTest extends HttpClientTest implements AgentTestTrait {
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import org.springframework.http.HttpEntity
import org.springframework.http.HttpHeaders
@ -15,7 +16,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class SpringRestTemplateTest extends HttpClientTest {
class SpringRestTemplateTest extends HttpClientTest implements AgentTestTrait {
@Shared
ClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory()

View File

@ -5,8 +5,9 @@
import static io.opentelemetry.api.trace.SpanKind.CLIENT
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import java.net.http.HttpClient
import java.net.http.HttpRequest
import java.net.http.HttpResponse
@ -17,7 +18,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
abstract class JdkHttpClientTest extends HttpClientTest {
abstract class JdkHttpClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
def client = HttpClient.newBuilder().connectTimeout(Duration.of(CONNECT_TIMEOUT_MS,

View File

@ -7,12 +7,13 @@ import com.sun.jersey.api.client.Client
import com.sun.jersey.api.client.ClientResponse
import com.sun.jersey.api.client.filter.GZIPContentEncodingFilter
import com.sun.jersey.api.client.filter.LoggingFilter
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class JaxRsClientV1Test extends HttpClientTest {
class JaxRsClientV1Test extends HttpClientTest implements AgentTestTrait {
@Shared
Client client = Client.create()

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.util.concurrent.CountDownLatch
import java.util.concurrent.TimeUnit
@ -21,7 +22,7 @@ import org.glassfish.jersey.client.JerseyClientBuilder
import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder
import spock.lang.Timeout
abstract class JaxRsClientAsyncTest extends HttpClientTest {
abstract class JaxRsClientAsyncTest extends HttpClientTest implements AgentTestTrait {
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {

View File

@ -5,8 +5,9 @@
import static io.opentelemetry.api.trace.SpanKind.CLIENT
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import java.util.concurrent.TimeUnit
import javax.ws.rs.client.Client
import javax.ws.rs.client.ClientBuilder
@ -23,7 +24,7 @@ import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder
import spock.lang.Timeout
import spock.lang.Unroll
abstract class JaxRsClientTest extends HttpClientTest {
abstract class JaxRsClientTest extends HttpClientTest implements AgentTestTrait {
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.nio.charset.StandardCharsets
import javax.ws.rs.GET
@ -16,7 +17,7 @@ import org.apache.http.client.utils.URLEncodedUtils
import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder
import org.jboss.resteasy.specimpl.ResteasyUriBuilder
class ResteasyProxyClientTest extends HttpClientTest {
class ResteasyProxyClientTest extends HttpClientTest implements AgentTestTrait {
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {
def proxyMethodName = "${method}_${uri.path}".toLowerCase()

View File

@ -11,10 +11,11 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static java.util.concurrent.TimeUnit.SECONDS
import static org.junit.Assume.assumeTrue
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
import java.util.concurrent.CompletableFuture
import okhttp3.Call
import okhttp3.Callback
@ -24,7 +25,7 @@ import okhttp3.Response
import spock.lang.Timeout
import spock.lang.Unroll
abstract class JaxRsHttpServerTest<S> extends HttpServerTest<S> {
abstract class JaxRsHttpServerTest<S> extends HttpServerTest<S> implements AgentTestTrait {
@Timeout(10)
@Unroll
def "should handle #desc AsyncResponse"() {

View File

@ -10,6 +10,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import javax.servlet.DispatcherType
@ -23,7 +24,7 @@ import org.eclipse.jetty.server.handler.AbstractHandler
import org.eclipse.jetty.server.handler.ErrorHandler
import spock.lang.Shared
class JettyHandlerTest extends HttpServerTest<Server> {
class JettyHandlerTest extends HttpServerTest<Server> implements AgentTestTrait {
@Shared
ErrorHandler errorHandler = new ErrorHandler() {

View File

@ -3,10 +3,11 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import khttp.KHttp
class KHttpClientTest extends HttpClientTest {
class KHttpClientTest extends HttpClientTest implements AgentTestTrait {
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {

View File

@ -11,13 +11,14 @@ import com.ning.http.client.AsyncCompletionHandler
import com.ning.http.client.AsyncHttpClient
import com.ning.http.client.AsyncHttpClientConfig
import com.ning.http.client.Response
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.util.concurrent.ExecutionException
import java.util.concurrent.TimeUnit
import spock.lang.AutoCleanup
import spock.lang.Shared
class Netty38ClientTest extends HttpClientTest {
class Netty38ClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
def clientConfig = new AsyncHttpClientConfig.Builder()

View File

@ -15,6 +15,7 @@ import static org.jboss.netty.handler.codec.http.HttpHeaders.Names.CONTENT_TYPE
import static org.jboss.netty.handler.codec.http.HttpHeaders.Names.LOCATION
import static org.jboss.netty.handler.codec.http.HttpVersion.HTTP_1_1
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import org.jboss.netty.bootstrap.ServerBootstrap
import org.jboss.netty.buffer.ChannelBuffer
@ -41,7 +42,7 @@ import org.jboss.netty.logging.InternalLoggerFactory
import org.jboss.netty.logging.Slf4JLoggerFactory
import org.jboss.netty.util.CharsetUtil
class Netty38ServerTest extends HttpServerTest<ServerBootstrap> {
class Netty38ServerTest extends HttpServerTest<ServerBootstrap> implements AgentTestTrait {
static final LoggingHandler LOGGING_HANDLER
static {

View File

@ -11,13 +11,14 @@ import com.ning.http.client.AsyncCompletionHandler
import com.ning.http.client.AsyncHttpClient
import com.ning.http.client.AsyncHttpClientConfig
import com.ning.http.client.Response
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.util.concurrent.ExecutionException
import java.util.concurrent.TimeUnit
import spock.lang.AutoCleanup
import spock.lang.Shared
class Netty38ClientTest extends HttpClientTest {
class Netty38ClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
def clientConfig = new AsyncHttpClientConfig.Builder()

View File

@ -15,6 +15,7 @@ import static org.jboss.netty.handler.codec.http.HttpHeaders.Names.CONTENT_TYPE
import static org.jboss.netty.handler.codec.http.HttpHeaders.Names.LOCATION
import static org.jboss.netty.handler.codec.http.HttpVersion.HTTP_1_1
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import org.jboss.netty.bootstrap.ServerBootstrap
import org.jboss.netty.buffer.ChannelBuffer
@ -41,7 +42,7 @@ import org.jboss.netty.logging.InternalLoggerFactory
import org.jboss.netty.logging.Slf4JLoggerFactory
import org.jboss.netty.util.CharsetUtil
class Netty38ServerTest extends HttpServerTest<ServerBootstrap> {
class Netty38ServerTest extends HttpServerTest<ServerBootstrap> implements AgentTestTrait {
static final LoggingHandler LOGGING_HANDLER
static {

View File

@ -8,6 +8,7 @@ import static io.opentelemetry.instrumentation.test.utils.TraceUtils.basicSpan
import static io.opentelemetry.instrumentation.test.utils.TraceUtils.runUnderTrace
import static org.asynchttpclient.Dsl.asyncHttpClient
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.util.concurrent.ExecutionException
import java.util.concurrent.TimeUnit
@ -20,7 +21,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class Netty40ClientTest extends HttpClientTest {
class Netty40ClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
def clientConfig = DefaultAsyncHttpClientConfig.Builder.newInstance().setRequestTimeout(TimeUnit.SECONDS.toMillis(10).toInteger())

View File

@ -34,9 +34,10 @@ import io.netty.handler.codec.http.HttpResponseStatus
import io.netty.handler.logging.LogLevel
import io.netty.handler.logging.LoggingHandler
import io.netty.util.CharsetUtil
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpServerTest
class Netty40ServerTest extends HttpServerTest<EventLoopGroup> {
class Netty40ServerTest extends HttpServerTest<EventLoopGroup> implements AgentTestTrait {
static final LoggingHandler LOGGING_HANDLER = new LoggingHandler(SERVER_LOGGER.name, LogLevel.DEBUG)

View File

@ -26,6 +26,7 @@ import io.netty.handler.codec.http.HttpClientCodec
import io.netty.handler.codec.http.HttpHeaderNames
import io.netty.handler.codec.http.HttpMethod
import io.netty.handler.codec.http.HttpVersion
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import io.opentelemetry.javaagent.instrumentation.netty.v4_1.client.HttpClientTracingHandler
import java.util.concurrent.ExecutionException
@ -40,7 +41,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class Netty41ClientTest extends HttpClientTest {
class Netty41ClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
def clientConfig = DefaultAsyncHttpClientConfig.Builder.newInstance().setRequestTimeout(TimeUnit.SECONDS.toMillis(10).toInteger())

View File

@ -33,9 +33,10 @@ import io.netty.handler.codec.http.HttpServerCodec
import io.netty.handler.logging.LogLevel
import io.netty.handler.logging.LoggingHandler
import io.netty.util.CharsetUtil
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpServerTest
class Netty41ServerTest extends HttpServerTest<EventLoopGroup> {
class Netty41ServerTest extends HttpServerTest<EventLoopGroup> implements AgentTestTrait {
static final LoggingHandler LOGGING_HANDLER = new LoggingHandler(SERVER_LOGGER.name, LogLevel.DEBUG)

View File

@ -9,13 +9,14 @@ import com.squareup.okhttp.OkHttpClient
import com.squareup.okhttp.Request
import com.squareup.okhttp.RequestBody
import com.squareup.okhttp.internal.http.HttpMethod
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.util.concurrent.TimeUnit
import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class OkHttp2Test extends HttpClientTest {
class OkHttp2Test extends HttpClientTest implements AgentTestTrait {
@Shared
def client = new OkHttpClient()

View File

@ -3,6 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.util.concurrent.TimeUnit
import okhttp3.Headers
@ -14,7 +15,7 @@ import okhttp3.internal.http.HttpMethod
import spock.lang.Timeout
@Timeout(5)
class OkHttp3Test extends HttpClientTest {
class OkHttp3Test extends HttpClientTest implements AgentTestTrait {
def client = new OkHttpClient.Builder()
.connectTimeout(CONNECT_TIMEOUT_MS, TimeUnit.MILLISECONDS)

View File

@ -6,6 +6,7 @@
import akka.actor.ActorSystem
import akka.stream.ActorMaterializer
import akka.stream.ActorMaterializerSettings
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import play.shaded.ahc.org.asynchttpclient.AsyncHttpClient
import play.shaded.ahc.org.asynchttpclient.AsyncHttpClientConfig
@ -13,7 +14,7 @@ import play.shaded.ahc.org.asynchttpclient.DefaultAsyncHttpClient
import play.shaded.ahc.org.asynchttpclient.DefaultAsyncHttpClientConfig
import spock.lang.Shared
abstract class PlayWsClientTestBase extends HttpClientTest {
abstract class PlayWsClientTestBase extends HttpClientTest implements AgentTestTrait {
@Shared
ActorSystem system

View File

@ -5,6 +5,7 @@
package client
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.util.concurrent.TimeUnit
import play.GlobalSettings
@ -13,7 +14,7 @@ import play.test.FakeApplication
import play.test.Helpers
import spock.lang.Shared
class PlayWsClientTest extends HttpClientTest {
class PlayWsClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
def application = new FakeApplication(
new File("."),

View File

@ -9,12 +9,13 @@ import static io.opentelemetry.api.trace.SpanKind.INTERNAL
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.EXCEPTION
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
import play.api.test.TestServer
class PlayServerTest extends HttpServerTest<TestServer> {
class PlayServerTest extends HttpServerTest<TestServer> implements AgentTestTrait {
@Override
TestServer startServer(int port) {
def server = SyncServer.server(port)

View File

@ -5,6 +5,7 @@
package client
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import play.libs.ws.WS
import spock.lang.AutoCleanup
@ -15,7 +16,7 @@ import spock.lang.Timeout
// Play 2.6+ uses a separately versioned client that shades the underlying dependency
// This means our built in instrumentation won't work.
@Timeout(5)
class PlayWsClientTest extends HttpClientTest {
class PlayWsClientTest extends HttpClientTest implements AgentTestTrait {
@Subject
@Shared
@AutoCleanup

View File

@ -12,6 +12,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
@ -20,7 +21,7 @@ import play.mvc.Results
import play.routing.RoutingDsl
import play.server.Server
class PlayServerTest extends HttpServerTest<Server> {
class PlayServerTest extends HttpServerTest<Server> implements AgentTestTrait {
@Override
Server startServer(int port) {
def router =

View File

@ -12,6 +12,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
@ -22,7 +23,7 @@ import play.mvc.Results
import play.routing.RoutingDsl
import play.server.Server
class PlayServerTest extends HttpServerTest<Server> {
class PlayServerTest extends HttpServerTest<Server> implements AgentTestTrait {
@Override
Server startServer(int port) {
return Server.forRouter(Mode.TEST, port) { BuiltInComponents components ->

View File

@ -5,6 +5,7 @@
package client
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import java.time.Duration
import ratpack.exec.ExecResult
@ -15,7 +16,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(5)
class RatpackHttpClientTest extends HttpClientTest {
class RatpackHttpClientTest extends HttpClientTest implements AgentTestTrait {
@AutoCleanup
@Shared

View File

@ -13,6 +13,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
@ -21,7 +22,7 @@ import ratpack.groovy.test.embed.GroovyEmbeddedApp
import ratpack.handling.Context
import ratpack.test.embed.EmbeddedApp
class RatpackHttpServerTest extends HttpServerTest<EmbeddedApp> {
class RatpackHttpServerTest extends HttpServerTest<EmbeddedApp> implements AgentTestTrait {
@Override
EmbeddedApp startServer(int bindPort) {

View File

@ -3,11 +3,12 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import reactor.netty.http.client.HttpClient
import reactor.netty.http.client.HttpClientResponse
class ReactorNettyHttpClientTest extends HttpClientTest {
class ReactorNettyHttpClientTest extends HttpClientTest implements AgentTestTrait {
@Override
boolean testRedirects() {

View File

@ -3,11 +3,12 @@
* SPDX-License-Identifier: Apache-2.0
*/
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import reactor.netty.http.client.HttpClient
import reactor.netty.http.client.HttpClientResponse
class ReactorNettyHttpClientTest extends HttpClientTest {
class ReactorNettyHttpClientTest extends HttpClientTest implements AgentTestTrait {
@Override
boolean testRedirects() {

View File

@ -7,6 +7,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.NOT_FOUND
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import org.glassfish.embeddable.BootstrapProperties
@ -21,7 +22,7 @@ import org.glassfish.embeddable.archive.ScatteredArchive
* OSGi setup that requires {@link io.opentelemetry.javaagent.instrumentation.javaclassloader.ClassloadingInstrumentation}.
*/
// TODO: Figure out a better way to test with OSGi included.
class GlassFishServerTest extends HttpServerTest<GlassFish> {
class GlassFishServerTest extends HttpServerTest<GlassFish> implements AgentTestTrait {
@Override
URI buildAddress() {

View File

@ -11,6 +11,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
@ -19,7 +20,7 @@ import org.eclipse.jetty.server.Server
import org.eclipse.jetty.server.handler.ErrorHandler
import org.eclipse.jetty.servlet.ServletContextHandler
class JettyServlet2Test extends HttpServerTest<Server> {
class JettyServlet2Test extends HttpServerTest<Server> implements AgentTestTrait {
private static final CONTEXT = "ctx"

View File

@ -10,13 +10,14 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import javax.servlet.Servlet
import okhttp3.Request
import okhttp3.RequestBody
abstract class AbstractServlet3Test<SERVER, CONTEXT> extends HttpServerTest<SERVER> {
abstract class AbstractServlet3Test<SERVER, CONTEXT> extends HttpServerTest<SERVER> implements AgentTestTrait {
@Override
URI buildAddress() {
return new URI("http://localhost:$port$contextPath/")

View File

@ -5,6 +5,7 @@
package client
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import org.springframework.http.HttpMethod
import org.springframework.web.reactive.function.client.ClientResponse
@ -12,7 +13,7 @@ import org.springframework.web.reactive.function.client.WebClient
import spock.lang.Timeout
@Timeout(5)
class SpringWebfluxHttpClientTest extends HttpClientTest {
class SpringWebfluxHttpClientTest extends HttpClientTest implements AgentTestTrait {
@Override
int doRequest(String method, URI uri, Map<String, String> headers, Closure callback) {

View File

@ -14,6 +14,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
@ -24,7 +25,7 @@ import org.springframework.boot.SpringApplication
import org.springframework.context.ConfigurableApplicationContext
import org.springframework.web.servlet.view.RedirectView
class SpringBootBasedTest extends HttpServerTest<ConfigurableApplicationContext> {
class SpringBootBasedTest extends HttpServerTest<ConfigurableApplicationContext> implements AgentTestTrait {
@Override
ConfigurableApplicationContext startServer(int port) {

View File

@ -12,6 +12,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
@ -19,7 +20,7 @@ import org.springframework.boot.SpringApplication
import org.springframework.context.ConfigurableApplicationContext
import test.boot.SecurityConfig
class ServletFilterTest extends HttpServerTest<ConfigurableApplicationContext> {
class ServletFilterTest extends HttpServerTest<ConfigurableApplicationContext> implements AgentTestTrait {
@Override
ConfigurableApplicationContext startServer(int port) {

View File

@ -9,6 +9,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import io.opentelemetry.api.trace.SpanKind
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
@ -21,7 +22,7 @@ import org.eclipse.jetty.servlet.DefaultServlet
import org.eclipse.jetty.servlet.ServletContextHandler
import org.eclipse.jetty.util.resource.FileResource
class Struts2ActionSpanTest extends HttpServerTest<Server> {
class Struts2ActionSpanTest extends HttpServerTest<Server> implements AgentTestTrait {
@Override
boolean testNotFound() {

View File

@ -11,6 +11,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.opentelemetry.sdk.trace.data.SpanData
@ -18,7 +19,7 @@ import org.apache.catalina.Context
import org.apache.catalina.startup.Tomcat
import org.apache.tomcat.util.descriptor.web.ErrorPage
class TomcatHandlerTest extends HttpServerTest<Tomcat> {
class TomcatHandlerTest extends HttpServerTest<Tomcat> implements AgentTestTrait {
def "Tomcat starts"() {
expect:

View File

@ -9,6 +9,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.undertow.Handlers
import io.undertow.Undertow
@ -16,7 +17,7 @@ import io.undertow.util.Headers
import io.undertow.util.StatusCodes
//TODO make test which mixes handlers and servlets
class UndertowServerTest extends HttpServerTest<Undertow> {
class UndertowServerTest extends HttpServerTest<Undertow> implements AgentTestTrait {
@Override
Undertow startServer(int port) {

View File

@ -5,6 +5,7 @@
package client
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import io.vertx.circuitbreaker.CircuitBreakerOptions
import io.vertx.core.VertxOptions
@ -18,7 +19,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(10)
class VertxRxCircuitBreakerWebClientTest extends HttpClientTest {
class VertxRxCircuitBreakerWebClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
Vertx vertx = Vertx.vertx(new VertxOptions())

View File

@ -5,6 +5,7 @@
package client
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import io.vertx.core.VertxOptions
import io.vertx.core.http.HttpMethod
@ -15,7 +16,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(10)
class VertxRxWebClientTest extends HttpClientTest {
class VertxRxWebClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
Vertx vertx = Vertx.vertx(new VertxOptions())

View File

@ -12,6 +12,7 @@ import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEn
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.REDIRECT
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.SUCCESS
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.vertx.core.DeploymentOptions
import io.vertx.core.Future
@ -23,7 +24,7 @@ import io.vertx.reactivex.ext.web.Router
import java.util.concurrent.CompletableFuture
import java.util.concurrent.TimeUnit
class VertxRxHttpServerTest extends HttpServerTest<Vertx> {
class VertxRxHttpServerTest extends HttpServerTest<Vertx> implements AgentTestTrait {
public static final String CONFIG_HTTP_SERVER_PORT = "http.server.port"
@Override

View File

@ -5,6 +5,7 @@
package client
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpClientTest
import io.vertx.core.Vertx
import io.vertx.core.VertxOptions
@ -16,7 +17,7 @@ import spock.lang.Shared
import spock.lang.Timeout
@Timeout(10)
class VertxHttpClientTest extends HttpClientTest {
class VertxHttpClientTest extends HttpClientTest implements AgentTestTrait {
@Shared
def vertx = Vertx.vertx(new VertxOptions())

View File

@ -7,6 +7,7 @@ package server
import static io.opentelemetry.instrumentation.test.base.HttpServerTest.ServerEndpoint.PATH_PARAM
import io.opentelemetry.instrumentation.test.AgentTestTrait
import io.opentelemetry.instrumentation.test.base.HttpServerTest
import io.vertx.core.AbstractVerticle
import io.vertx.core.DeploymentOptions
@ -16,9 +17,7 @@ import io.vertx.core.json.JsonObject
import java.util.concurrent.CompletableFuture
import java.util.concurrent.TimeUnit
class VertxHttpServerTest extends HttpServerTest<Vertx> {
public static final String CONFIG_HTTP_SERVER_PORT = "http.server.port"
class VertxHttpServerTest extends HttpServerTest<Vertx> implements AgentTestTrait {
@Override
Vertx startServer(int port) {
Vertx server = Vertx.vertx(new VertxOptions()
@ -28,7 +27,7 @@ class VertxHttpServerTest extends HttpServerTest<Vertx> {
CompletableFuture<Void> future = new CompletableFuture<>()
server.deployVerticle(verticle().getName(),
new DeploymentOptions()
.setConfig(new JsonObject().put(CONFIG_HTTP_SERVER_PORT, port))
.setConfig(new JsonObject().put(VertxWebServer.CONFIG_HTTP_SERVER_PORT, port))
.setInstances(3)) { res ->
if (!res.succeeded()) {
throw new RuntimeException("Cannot deploy server Verticle", res.cause())

View File

@ -20,10 +20,11 @@ import io.vertx.ext.web.Router;
import io.vertx.ext.web.RoutingContext;
public class VertxWebServer extends AbstractVerticle {
public static final String CONFIG_HTTP_SERVER_PORT = "http.server.port";
@Override
public void start(Future<Void> startFuture) {
int port = config().getInteger(VertxHttpServerTest.CONFIG_HTTP_SERVER_PORT);
int port = config().getInteger(CONFIG_HTTP_SERVER_PORT);
Router router = Router.router(vertx);
//noinspection Convert2Lambda

View File

@ -16,7 +16,7 @@ import static org.junit.Assume.assumeTrue
import groovy.transform.stc.ClosureParams
import groovy.transform.stc.SimpleType
import io.opentelemetry.api.trace.Span
import io.opentelemetry.instrumentation.test.AgentInstrumentationSpecification
import io.opentelemetry.instrumentation.test.InstrumentationSpecification
import io.opentelemetry.instrumentation.test.asserts.AttributesAssert
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.sdk.trace.data.SpanData
@ -30,7 +30,7 @@ import spock.lang.Shared
import spock.lang.Unroll
@Unroll
abstract class HttpClientTest extends AgentInstrumentationSpecification {
abstract class HttpClientTest extends InstrumentationSpecification {
protected static final BODY_METHODS = ["POST", "PUT"]
protected static final CONNECT_TIMEOUT_MS = 5000
protected static final BASIC_AUTH_KEY = "custom-authorization-header"
@ -498,7 +498,7 @@ abstract class HttpClientTest extends AgentInstrumentationSpecification {
} else {
childOf((SpanData) parentSpan)
}
if(additionAttributesAssert != null){
if (additionAttributesAssert != null) {
attributes(additionAttributesAssert)
}
}

View File

@ -17,7 +17,7 @@ import static org.junit.Assume.assumeTrue
import io.opentelemetry.api.trace.Span
import io.opentelemetry.api.trace.SpanKind
import io.opentelemetry.instrumentation.test.AgentInstrumentationSpecification
import io.opentelemetry.instrumentation.test.InstrumentationSpecification
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
import io.opentelemetry.sdk.trace.data.SpanData
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes
@ -29,7 +29,7 @@ import okhttp3.Response
import spock.lang.Unroll
@Unroll
abstract class HttpServerTest<SERVER> extends AgentInstrumentationSpecification implements HttpServerTestTrait<SERVER> {
abstract class HttpServerTest<SERVER> extends InstrumentationSpecification implements HttpServerTestTrait<SERVER> {
String expectedServerSpanName(ServerEndpoint endpoint) {
return endpoint == PATH_PARAM ? getContextPath() + "/path/:id/param" : endpoint.resolvePath(address).path