Skip to content

Commit 68dbcd5

Browse files
authored
Convert restlet 1.1 tests from groovy to java (#12337)
1 parent 53e9577 commit 68dbcd5

File tree

23 files changed

+722
-645
lines changed

23 files changed

+722
-645
lines changed

instrumentation/restlet/restlet-1.1/javaagent/src/test/groovy/io/opentelemetry/javaagent/instrumentation/restlet/v1_1/RestletServerTest.groovy

-31
This file was deleted.

instrumentation/restlet/restlet-1.1/javaagent/src/test/groovy/io/opentelemetry/javaagent/instrumentation/restlet/v1_1/ServletServerTest.groovy

-20
This file was deleted.

instrumentation/restlet/restlet-1.1/javaagent/src/test/groovy/io/opentelemetry/javaagent/instrumentation/restlet/v1_1/spring/SpringBeanRouterTest.groovy

-23
This file was deleted.

instrumentation/restlet/restlet-1.1/javaagent/src/test/groovy/io/opentelemetry/javaagent/instrumentation/restlet/v1_1/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.v1_1;
7+
8+
import io.opentelemetry.instrumentation.restlet.v1_1.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,24 @@
1+
/*
2+
* Copyright The OpenTelemetry Authors
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
package io.opentelemetry.javaagent.instrumentation.restlet.v1_1;
7+
8+
import io.opentelemetry.instrumentation.restlet.v1_1.AbstractServletServerTest;
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 ServletServerTest extends AbstractServletServerTest {
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+
}
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.v1_1.spring;
7+
8+
import io.opentelemetry.instrumentation.restlet.v1_1.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.v1_1.spring;
7+
8+
import io.opentelemetry.instrumentation.restlet.v1_1.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-1.1/library/src/test/groovy/io/opententelemetry/instrumentation/restlet/v1_1/RestletServerTest.groovy

-33
This file was deleted.

instrumentation/restlet/restlet-1.1/library/src/test/groovy/io/opententelemetry/instrumentation/restlet/v1_1/spring/AbstractSpringServerLibraryTest.groovy

-46
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
/*
2+
* Copyright The OpenTelemetry Authors
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
package io.opententelemetry.instrumentation.restlet.v1_1;
7+
8+
import static java.util.Collections.singletonList;
9+
10+
import com.noelios.restlet.StatusFilter;
11+
import io.opentelemetry.instrumentation.restlet.v1_1.AbstractRestletServerTest;
12+
import io.opentelemetry.instrumentation.restlet.v1_1.RestletTelemetry;
13+
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
14+
import io.opentelemetry.instrumentation.testing.junit.http.AbstractHttpServerTest;
15+
import io.opentelemetry.instrumentation.testing.junit.http.HttpServerInstrumentationExtension;
16+
import org.junit.jupiter.api.extension.RegisterExtension;
17+
import org.restlet.Filter;
18+
import org.restlet.Restlet;
19+
20+
class RestletServerTest extends AbstractRestletServerTest {
21+
22+
@RegisterExtension
23+
static final InstrumentationExtension testing = HttpServerInstrumentationExtension.forLibrary();
24+
25+
@Override
26+
protected Restlet wrapRestlet(Restlet restlet, String path) {
27+
RestletTelemetry telemetry =
28+
RestletTelemetry.builder(testing.getOpenTelemetry())
29+
.setCapturedRequestHeaders(singletonList(AbstractHttpServerTest.TEST_REQUEST_HEADER))
30+
.setCapturedResponseHeaders(singletonList(AbstractHttpServerTest.TEST_RESPONSE_HEADER))
31+
.build();
32+
33+
Filter tracingFilter = telemetry.newFilter(path);
34+
Filter statusFilter = new StatusFilter(component.getContext(), false, null, null);
35+
36+
tracingFilter.setNext(statusFilter);
37+
statusFilter.setNext(restlet);
38+
39+
return tracingFilter;
40+
}
41+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
/*
2+
* Copyright The OpenTelemetry Authors
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
package io.opententelemetry.instrumentation.restlet.v1_1.spring;
7+
8+
import static java.util.Collections.singletonList;
9+
10+
import com.noelios.restlet.StatusFilter;
11+
import io.opentelemetry.instrumentation.restlet.v1_1.RestletTelemetry;
12+
import io.opentelemetry.instrumentation.restlet.v1_1.spring.AbstractSpringServerTest;
13+
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
14+
import io.opentelemetry.instrumentation.testing.junit.http.AbstractHttpServerTest;
15+
import io.opentelemetry.instrumentation.testing.junit.http.HttpServerInstrumentationExtension;
16+
import java.util.ArrayList;
17+
import java.util.List;
18+
import org.junit.jupiter.api.extension.RegisterExtension;
19+
import org.restlet.Filter;
20+
import org.restlet.Restlet;
21+
import org.restlet.Route;
22+
import org.restlet.Router;
23+
import org.restlet.util.RouteList;
24+
25+
abstract class AbstractSpringServerLibraryTest extends AbstractSpringServerTest {
26+
27+
@RegisterExtension
28+
static final InstrumentationExtension testing = HttpServerInstrumentationExtension.forLibrary();
29+
30+
@Override
31+
protected Restlet wrapRestlet(Restlet restlet, String path) {
32+
RestletTelemetry telemetry =
33+
RestletTelemetry.builder(testing.getOpenTelemetry())
34+
.setCapturedRequestHeaders(singletonList(AbstractHttpServerTest.TEST_REQUEST_HEADER))
35+
.setCapturedResponseHeaders(singletonList(AbstractHttpServerTest.TEST_RESPONSE_HEADER))
36+
.build();
37+
38+
Filter tracingFilter = telemetry.newFilter(path);
39+
Filter statusFilter = new StatusFilter(component.getContext(), false, null, null);
40+
41+
tracingFilter.setNext(statusFilter);
42+
statusFilter.setNext(restlet);
43+
44+
return tracingFilter;
45+
}
46+
47+
@Override
48+
protected void setupRouting() {
49+
List<Route> routes = new ArrayList<>();
50+
for (Route route : router.getRoutes()) {
51+
String pattern = route.getTemplate().getPattern();
52+
routes.add(new Route(router, pattern, wrapRestlet(route.getNext(), pattern)));
53+
}
54+
router.setRoutes(new RouteList(routes));
55+
router.setDefaultRoute(
56+
new Route(router, "/", wrapRestlet(new Router(host.getContext()), "/*")));
57+
host.attach(router);
58+
}
59+
}

0 commit comments

Comments
 (0)