Skip to content

Commit bb5c413

Browse files
Jørgen Grøndaltylerbenson
authored andcommitted
fix: create a test to verify that spark is indeed responding
1 parent ede4620 commit bb5c413

3 files changed

Lines changed: 40 additions & 19 deletions

File tree

dd-java-agent/instrumentation/jetty-8/src/main/java/datadog/trace/instrumentation/jetty8/HandlerInstrumentation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ public static Scope startSpan(
8989
.asChildOf(extractedContext)
9090
.withTag(Tags.SPAN_KIND.getKey(), Tags.SPAN_KIND_SERVER)
9191
.withTag(DDTags.SPAN_TYPE, DDSpanTypes.WEB_SERVLET)
92-
// .withTag("span.origin.type", statement.getClass().getName())
92+
.withTag("span.origin.type", HandlerInstrumentationAdvice.class.getName())
9393
.withTag(DDTags.RESOURCE_NAME, resourceName)
9494
.startActive(false);
9595

dd-java-agent/instrumentation/sparkjava-2.3/src/test/groovy/SparkJavaBasedTest.groovy

Lines changed: 39 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,25 @@ import datadog.trace.agent.test.AgentTestRunner
22
import datadog.trace.api.DDSpanTypes
33
import okhttp3.OkHttpClient
44
import okhttp3.Request
5+
import spark.Spark
56
import spock.lang.Timeout
67

78

89
@Timeout(20)
910
class SparkJavaBasedTest extends AgentTestRunner {
1011

11-
static {
12+
def setupSpec() {
1213
TestSparkJavaApplication.initSpark()
1314
}
1415

16+
def cleanupSpec() {
17+
Spark.stop()
18+
}
19+
20+
def setup() {
21+
TEST_WRITER.start()
22+
}
23+
1524
private int port = 4567
1625
OkHttpClient client = new OkHttpClient.Builder().build()
1726

@@ -26,6 +35,19 @@ class SparkJavaBasedTest extends AgentTestRunner {
2635
expect:
2736
port != 0
2837
response.body().string() == "Hello World"
38+
}
39+
40+
def "valid response with registered trace"() {
41+
setup:
42+
def request = new Request.Builder()
43+
.url("http://localhost:$port/")
44+
.get()
45+
.build()
46+
def response = client.newCall(request).execute()
47+
48+
expect:
49+
port != 0
50+
response.body().string() == "Hello World"
2951

3052
and:
3153
TEST_WRITER.waitForTraces(1)
@@ -48,22 +70,22 @@ class SparkJavaBasedTest extends AgentTestRunner {
4870

4971
def trace = TEST_WRITER.firstTrace()
5072
trace.size() == 1
51-
def span = trace[0]
52-
53-
span.context().operationName == "jetty.request"
54-
span.context().resourceName == "GET /param/:param/"
55-
span.context().spanType == DDSpanTypes.WEB_SERVLET
56-
!span.context().getErrorFlag()
57-
span.context().parentId == 0
58-
span.context().tags["http.url"] == "http://localhost:$port/param/asdf1234/"
59-
span.context().tags["http.method"] == "GET"
60-
span.context().tags["span.kind"] == "server"
61-
span.context().tags["span.type"] == "web"
62-
span.context().tags["component"] == "java-web-servlet"
63-
span.context().tags["http.status_code"] == 200
64-
span.context().tags["thread.name"] != null
65-
span.context().tags["thread.id"] != null
66-
span.context().tags.size() == 8
73+
def spanContext = trace[0].context()
74+
75+
spanContext.operationName == "jetty.request"
76+
spanContext.resourceName == "GET /param/:param/"
77+
spanContext.spanType == DDSpanTypes.WEB_SERVLET
78+
!spanContext.getErrorFlag()
79+
spanContext.parentId == 0
80+
spanContext.tags["http.url"] == "http://localhost:$port/param/asdf1234/"
81+
spanContext.tags["http.method"] == "GET"
82+
spanContext.tags["span.kind"] == "server"
83+
spanContext.tags["span.type"] == "web"
84+
spanContext.tags["component"] == "java-web-servlet"
85+
spanContext.tags["http.status_code"] == 200
86+
spanContext.tags["thread.name"] != null
87+
spanContext.tags["thread.id"] != null
88+
spanContext.tags.size() == 8
6789
}
6890

6991
}

dd-java-agent/instrumentation/sparkjava-2.3/src/test/java/TestSparkJavaApplication.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,4 @@ public static void initSpark() {
1515
});
1616
Spark.awaitInitialization();
1717
}
18-
1918
}

0 commit comments

Comments
 (0)