Skip to content

Commit f0115c6

Browse files
authored
Convert restlet-2.0 tests to java (#12348)
1 parent 0f0477a commit f0115c6

File tree

20 files changed

+688
-571
lines changed

20 files changed

+688
-571
lines changed

instrumentation/restlet/restlet-1.1/testing/src/main/java/io/opentelemetry/instrumentation/restlet/v1_1/RestletAppTestBase.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@
2727
import org.restlet.resource.StringRepresentation;
2828
import org.restlet.resource.Variant;
2929

30-
public class RestletAppTestBase {
30+
class RestletAppTestBase {
31+
3132
abstract static class BaseResource extends Resource {
3233

3334
@Override

instrumentation/restlet/restlet-2.0/javaagent/src/test/groovy/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/RestletServerTest.groovy

-31
This file was deleted.

instrumentation/restlet/restlet-2.0/javaagent/src/test/groovy/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/spring/SpringBeanRouterTest.groovy

-23
This file was deleted.

instrumentation/restlet/restlet-2.0/javaagent/src/test/groovy/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/spring/SpringRouterTest.groovy

-23
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/*
2+
* Copyright The OpenTelemetry Authors
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
package io.opentelemetry.javaagent.instrumentation.restlet.v2_0;
7+
8+
import io.opentelemetry.instrumentation.restlet.v2_0.AbstractRestletServerTest;
9+
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
10+
import io.opentelemetry.instrumentation.testing.junit.http.HttpServerInstrumentationExtension;
11+
import io.opentelemetry.instrumentation.testing.junit.http.HttpServerTestOptions;
12+
import org.junit.jupiter.api.extension.RegisterExtension;
13+
14+
class RestletServerTest extends AbstractRestletServerTest {
15+
16+
@RegisterExtension
17+
static final InstrumentationExtension testing = HttpServerInstrumentationExtension.forAgent();
18+
19+
@Override
20+
protected void configure(HttpServerTestOptions options) {
21+
super.configure(options);
22+
options.setHasResponseCustomizer((endpoint) -> true);
23+
}
24+
25+
@Override
26+
protected String notFoundRoute() {
27+
return "/";
28+
}
29+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/*
2+
* Copyright The OpenTelemetry Authors
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
package io.opentelemetry.javaagent.instrumentation.restlet.v2_0.spring;
7+
8+
import io.opentelemetry.instrumentation.restlet.v2_0.spring.AbstractSpringServerTest;
9+
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
10+
import io.opentelemetry.instrumentation.testing.junit.http.HttpServerInstrumentationExtension;
11+
import io.opentelemetry.instrumentation.testing.junit.http.HttpServerTestOptions;
12+
import org.junit.jupiter.api.extension.RegisterExtension;
13+
14+
class SpringBeanRouterTest extends AbstractSpringServerTest {
15+
16+
@RegisterExtension
17+
static final InstrumentationExtension testing = HttpServerInstrumentationExtension.forAgent();
18+
19+
@Override
20+
protected void configure(HttpServerTestOptions options) {
21+
super.configure(options);
22+
options.setHasResponseCustomizer((endpoint) -> true);
23+
}
24+
25+
@Override
26+
protected String getConfigurationName() {
27+
return "springBeanRouterConf.xml";
28+
}
29+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/*
2+
* Copyright The OpenTelemetry Authors
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
package io.opentelemetry.javaagent.instrumentation.restlet.v2_0.spring;
7+
8+
import io.opentelemetry.instrumentation.restlet.v2_0.spring.AbstractSpringServerTest;
9+
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
10+
import io.opentelemetry.instrumentation.testing.junit.http.HttpServerInstrumentationExtension;
11+
import io.opentelemetry.instrumentation.testing.junit.http.HttpServerTestOptions;
12+
import org.junit.jupiter.api.extension.RegisterExtension;
13+
14+
class SpringRouterTest extends AbstractSpringServerTest {
15+
16+
@RegisterExtension
17+
static final InstrumentationExtension testing = HttpServerInstrumentationExtension.forAgent();
18+
19+
@Override
20+
protected void configure(HttpServerTestOptions options) {
21+
super.configure(options);
22+
options.setHasResponseCustomizer((endpoint) -> true);
23+
}
24+
25+
@Override
26+
protected String getConfigurationName() {
27+
return "springRouterConf.xml";
28+
}
29+
}

instrumentation/restlet/restlet-2.0/library/build.gradle.kts

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ repositories {
99
}
1010

1111
dependencies {
12-
1312
library("org.restlet.jse:org.restlet:2.0.2")
1413

1514
testImplementation(project(":instrumentation:restlet:restlet-2.0:testing"))
1615
testLibrary("org.restlet.jse:org.restlet.ext.jetty:2.0.2")
1716
}
17+
1818
// restlet registers the first engine that is present on classpath, so we need to enforce the appropriate version
1919
if (findProperty("testLatestDeps") as Boolean) {
2020
configurations.configureEach {

instrumentation/restlet/restlet-2.0/library/src/test/groovy/io/opentelemetry/instrumentation/restlet/v2_0/RestletServerTest.groovy

-32
This file was deleted.

instrumentation/restlet/restlet-2.0/library/src/test/groovy/io/opentelemetry/instrumentation/restlet/v2_0/spring/AbstractSpringServerLibraryTest.groovy

-71
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
/*
2+
* Copyright The OpenTelemetry Authors
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
package io.opentelemetry.instrumentation.restlet.v2_0;
7+
8+
import static java.util.Collections.singletonList;
9+
10+
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
11+
import io.opentelemetry.instrumentation.testing.junit.http.AbstractHttpServerTest;
12+
import io.opentelemetry.instrumentation.testing.junit.http.HttpServerInstrumentationExtension;
13+
import org.junit.jupiter.api.extension.RegisterExtension;
14+
import org.restlet.Restlet;
15+
import org.restlet.engine.application.StatusFilter;
16+
import org.restlet.routing.Filter;
17+
import org.restlet.service.StatusService;
18+
19+
class RestletServerTest extends AbstractRestletServerTest {
20+
21+
@RegisterExtension
22+
static final InstrumentationExtension testing = HttpServerInstrumentationExtension.forLibrary();
23+
24+
@Override
25+
protected Restlet wrapRestlet(Restlet restlet, String path) {
26+
RestletTelemetry telemetry =
27+
RestletTelemetry.builder(testing.getOpenTelemetry())
28+
.setCapturedRequestHeaders(singletonList(AbstractHttpServerTest.TEST_REQUEST_HEADER))
29+
.setCapturedResponseHeaders(singletonList(AbstractHttpServerTest.TEST_RESPONSE_HEADER))
30+
.build();
31+
32+
Filter tracingFilter = telemetry.newFilter(path);
33+
Filter statusFilter = new StatusFilter(component.getContext(), new StatusService());
34+
35+
tracingFilter.setNext(statusFilter);
36+
statusFilter.setNext(restlet);
37+
38+
return tracingFilter;
39+
}
40+
}

0 commit comments

Comments
 (0)