Skip to content

Commit 749fafa

Browse files
authored
enforce static imports (#12009)
1 parent 9ca4ec4 commit 749fafa

File tree

34 files changed

+202
-210
lines changed

34 files changed

+202
-210
lines changed

buildscripts/checkstyle.xml

+12
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,18 @@
5050
-->
5151

5252
<module name="TreeWalker">
53+
<module name="RegexpSinglelineJava">
54+
<property name="format"
55+
value="(?&lt;!import static io.opentelemetry.sdk.testing.assertj.)OpenTelemetryAssertions\."/>
56+
<property name="message"
57+
value="Please statically import methods from OpenTelemetryAssertions"/>
58+
</module>
59+
<module name="RegexpSinglelineJava">
60+
<property name="format"
61+
value="(?&lt;!import static org.assertj.core.api.|OpenTelemetry)Assertions.assertThat"/>
62+
<property name="message"
63+
value="Please statically import methods from Assertions (OpenTelemetryAssertions extends Assertions)"/>
64+
</module>
5365
<module name="OuterTypeFilename"/>
5466
<module name="IllegalTokenText">
5567
<property name="tokens" value="STRING_LITERAL, CHAR_LITERAL"/>

docs/contributing/style-guideline.md

+5
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,11 @@ rough guideline of what are commonly accepted static imports:
6767
- Singleton instances (especially where clearly named and hopefully immutable)
6868
- `tracer()` methods that expose tracer singleton instances
6969

70+
Some of these are enforced by checkstyle rules:
71+
72+
- look for `RegexpSinglelineJava` in `checkstyle.xml`
73+
- use `@SuppressWarnings("checkstyle:RegexpSinglelineJava")` to suppress the checkstyle warning
74+
7075
## Ordering of class contents
7176

7277
The following order is preferred:

instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/messaging/MessagingProducerMetricsTest.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55

66
package io.opentelemetry.instrumentation.api.incubator.semconv.messaging;
77

8+
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.assertThat;
89
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
9-
import static org.assertj.core.api.Assertions.assertThat;
1010

1111
import io.opentelemetry.api.common.Attributes;
1212
import io.opentelemetry.api.trace.Span;
@@ -16,7 +16,6 @@
1616
import io.opentelemetry.context.Context;
1717
import io.opentelemetry.instrumentation.api.instrumenter.OperationListener;
1818
import io.opentelemetry.sdk.metrics.SdkMeterProvider;
19-
import io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions;
2019
import io.opentelemetry.sdk.testing.exporter.InMemoryMetricReader;
2120
import io.opentelemetry.semconv.ServerAttributes;
2221
import io.opentelemetry.semconv.incubating.MessagingIncubatingAttributes;
@@ -76,7 +75,7 @@ void collectsMetrics() {
7675
assertThat(metricReader.collectAllMetrics())
7776
.satisfiesExactlyInAnyOrder(
7877
metric ->
79-
OpenTelemetryAssertions.assertThat(metric)
78+
assertThat(metric)
8079
.hasName("messaging.publish.duration")
8180
.hasUnit("s")
8281
.hasDescription("Measures the duration of publish operation.")
@@ -112,7 +111,7 @@ void collectsMetrics() {
112111
assertThat(metricReader.collectAllMetrics())
113112
.satisfiesExactlyInAnyOrder(
114113
metric ->
115-
OpenTelemetryAssertions.assertThat(metric)
114+
assertThat(metric)
116115
.hasName("messaging.publish.duration")
117116
.hasHistogramSatisfying(
118117
histogram ->

instrumentation-api/src/test/java/io/opentelemetry/instrumentation/api/internal/OperationMetricsUtilTest.java

+5-4
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55

66
package io.opentelemetry.instrumentation.api.internal;
77

8+
import static org.assertj.core.api.Assertions.assertThat;
9+
810
import io.opentelemetry.api.metrics.DoubleHistogramBuilder;
911
import io.opentelemetry.api.metrics.Meter;
1012
import io.opentelemetry.api.metrics.MeterProvider;
@@ -13,7 +15,6 @@
1315
import io.opentelemetry.instrumentation.testing.junit.LibraryInstrumentationExtension;
1416
import java.lang.reflect.Proxy;
1517
import java.util.concurrent.atomic.AtomicBoolean;
16-
import org.assertj.core.api.Assertions;
1718
import org.junit.jupiter.api.Test;
1819
import org.junit.jupiter.api.extension.RegisterExtension;
1920

@@ -29,7 +30,7 @@ void noWarning() {
2930
"test metrics", meter -> null, (s, doubleHistogramBuilder) -> warning.set(true));
3031
operationMetrics.create(testing.getOpenTelemetry().getMeter("test"));
3132

32-
Assertions.assertThat(warning).isFalse();
33+
assertThat(warning).isFalse();
3334
}
3435

3536
@Test
@@ -40,7 +41,7 @@ void noWarningWithNoopMetrics() {
4041
"test metrics", meter -> null, (s, doubleHistogramBuilder) -> warning.set(true));
4142
operationMetrics.create(MeterProvider.noop().get("test"));
4243

43-
Assertions.assertThat(warning).isFalse();
44+
assertThat(warning).isFalse();
4445
}
4546

4647
@Test
@@ -65,7 +66,7 @@ void warning() {
6566
});
6667
operationMetrics.create(meter);
6768

68-
Assertions.assertThat(warning).isTrue();
69+
assertThat(warning).isTrue();
6970
}
7071

7172
private static DoubleHistogramBuilder proxyDoubleHistogramBuilder(Meter meter) {

instrumentation/grails-3.0/javaagent/src/test/java/test/GrailsTest.java

+1-3
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535
import java.util.Locale;
3636
import java.util.Map;
3737
import java.util.function.Consumer;
38-
import org.assertj.core.api.Assertions;
3938
import org.junit.jupiter.api.extension.RegisterExtension;
4039
import org.springframework.boot.autoconfigure.SpringBootApplication;
4140
import org.springframework.boot.autoconfigure.web.ServerProperties;
@@ -183,8 +182,7 @@ public List<Consumer<SpanDataAssert>> errorPageSpanAssertions(
183182
if (endpoint == NOT_FOUND) {
184183
spanAssertions.add(
185184
span ->
186-
span.satisfies(
187-
spanData -> Assertions.assertThat(spanData.getName()).endsWith(".sendError"))
185+
span.satisfies(spanData -> assertThat(spanData.getName()).endsWith(".sendError"))
188186
.hasKind(SpanKind.INTERNAL)
189187
.hasAttributesSatisfying(Attributes::isEmpty));
190188
}

instrumentation/grpc-1.6/library/src/test/java/io/opentelemetry/instrumentation/grpc/v1_6/GrpcTest.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55

66
package io.opentelemetry.instrumentation.grpc.v1_6;
77

8+
import static org.assertj.core.api.Assertions.assertThat;
9+
810
import example.GreeterGrpc;
911
import example.Helloworld;
1012
import io.grpc.BindableService;
@@ -23,7 +25,6 @@
2325
import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor;
2426
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
2527
import io.opentelemetry.instrumentation.testing.junit.LibraryInstrumentationExtension;
26-
import io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions;
2728
import java.util.Collections;
2829
import java.util.concurrent.TimeUnit;
2930
import javax.annotation.Nullable;
@@ -124,7 +125,7 @@ public void sayHello(
124125
"parent",
125126
() -> client.sayHello(Helloworld.Request.newBuilder().setName("test").build()));
126127

127-
OpenTelemetryAssertions.assertThat(response.getMessage()).isEqualTo("Hello test");
128+
assertThat(response.getMessage()).isEqualTo("Hello test");
128129

129130
testing()
130131
.waitAndAssertTraces(

instrumentation/grpc-1.6/testing/src/main/java/io/opentelemetry/instrumentation/grpc/v1_6/AbstractGrpcTest.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@
4646
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
4747
import io.opentelemetry.instrumentation.testing.util.ThrowingRunnable;
4848
import io.opentelemetry.sdk.testing.assertj.AttributeAssertion;
49-
import io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions;
5049
import io.opentelemetry.sdk.trace.data.StatusData;
5150
import io.opentelemetry.semconv.NetworkAttributes;
5251
import io.opentelemetry.semconv.ServerAttributes;
@@ -1643,7 +1642,7 @@ public void sayHello(
16431642
"parent",
16441643
() -> client.sayHello(Helloworld.Request.newBuilder().setName("test").build()));
16451644

1646-
OpenTelemetryAssertions.assertThat(response.getMessage()).isEqualTo("Hello test");
1645+
assertThat(response.getMessage()).isEqualTo("Hello test");
16471646

16481647
testing()
16491648
.waitAndAssertTraces(

instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientAuthTest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66
package io.opentelemetry.instrumentation.lettuce.v5_1;
77

88
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
9+
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
910
import static org.assertj.core.api.Assertions.assertThat;
1011

1112
import io.lettuce.core.api.sync.RedisCommands;
1213
import io.opentelemetry.api.trace.SpanKind;
13-
import io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions;
1414
import io.opentelemetry.semconv.NetworkAttributes;
1515
import io.opentelemetry.semconv.ServerAttributes;
1616
import io.opentelemetry.semconv.incubating.DbIncubatingAttributes;
@@ -90,7 +90,7 @@ void testAuthCommand() throws Exception {
9090
equalTo(ServerAttributes.SERVER_ADDRESS, host),
9191
equalTo(ServerAttributes.SERVER_PORT, port),
9292
equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"),
93-
OpenTelemetryAssertions.satisfies(
93+
satisfies(
9494
DbIncubatingAttributes.DB_STATEMENT,
9595
stringAssert ->
9696
stringAssert.startsWith("CLIENT SETINFO lib-ver")))),

instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientTest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
package io.opentelemetry.instrumentation.lettuce.v5_1;
77

88
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
9+
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
910
import static java.nio.charset.StandardCharsets.UTF_8;
1011
import static org.assertj.core.api.Assertions.assertThat;
1112
import static org.assertj.core.api.Assertions.catchThrowable;
@@ -20,7 +21,6 @@
2021
import io.opentelemetry.api.common.AttributeKey;
2122
import io.opentelemetry.api.trace.SpanKind;
2223
import io.opentelemetry.instrumentation.test.utils.PortUtils;
23-
import io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions;
2424
import io.opentelemetry.semconv.NetworkAttributes;
2525
import io.opentelemetry.semconv.ServerAttributes;
2626
import io.opentelemetry.semconv.incubating.DbIncubatingAttributes;
@@ -396,7 +396,7 @@ void testDebugSegfaultCommandWithNoArgumentProducesNoSpan() {
396396
equalTo(ServerAttributes.SERVER_ADDRESS, host),
397397
equalTo(ServerAttributes.SERVER_PORT, containerConnection.port),
398398
equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"),
399-
OpenTelemetryAssertions.satisfies(
399+
satisfies(
400400
DbIncubatingAttributes.DB_STATEMENT,
401401
stringAssert ->
402402
stringAssert.startsWith("CLIENT SETINFO lib-ver")))),

instrumentation/log4j/log4j-appender-2.17/library/src/test/java/io/opentelemetry/instrumentation/log4j/appender/v2_17/LogReplayOpenTelemetryAppenderTest.java

+4-5
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,10 @@
66
package io.opentelemetry.instrumentation.log4j.appender.v2_17;
77

88
import static io.opentelemetry.api.common.AttributeKey.stringKey;
9+
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.assertThat;
910
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
10-
import static org.assertj.core.api.Assertions.assertThat;
1111

1212
import io.opentelemetry.sdk.logs.data.LogRecordData;
13-
import io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions;
1413
import java.util.List;
1514
import org.apache.logging.log4j.message.StringMapMessage;
1615
import org.apache.logging.log4j.message.StructuredDataMessage;
@@ -45,7 +44,7 @@ void twoLogs() {
4544

4645
List<LogRecordData> logDataList = logRecordExporter.getFinishedLogRecordItems();
4746
assertThat(logDataList).hasSize(1);
48-
OpenTelemetryAssertions.assertThat(logDataList.get(0))
47+
assertThat(logDataList.get(0))
4948
.hasResource(resource)
5049
.hasInstrumentationScope(instrumentationScopeInfo)
5150
.hasBody("log message 1");
@@ -69,7 +68,7 @@ void twoLogsStringMapMessage() {
6968

7069
List<LogRecordData> logDataList = logRecordExporter.getFinishedLogRecordItems();
7170
assertThat(logDataList).hasSize(1);
72-
OpenTelemetryAssertions.assertThat(logDataList.get(0))
71+
assertThat(logDataList.get(0))
7372
.hasResource(resource)
7473
.hasInstrumentationScope(instrumentationScopeInfo)
7574
.hasAttributesSatisfyingExactly(
@@ -94,7 +93,7 @@ void twoLogsStructuredDataMessage() {
9493

9594
List<LogRecordData> logDataList = logRecordExporter.getFinishedLogRecordItems();
9695
assertThat(logDataList).hasSize(1);
97-
OpenTelemetryAssertions.assertThat(logDataList.get(0))
96+
assertThat(logDataList.get(0))
9897
.hasResource(resource)
9998
.hasInstrumentationScope(instrumentationScopeInfo)
10099
.hasBody("a message")

instrumentation/logback/logback-appender-1.0/library/src/test/java/io/opentelemetry/instrumentation/logback/appender/v1_0/LogReplayOpenTelemetryAppenderTest.java

+2-3
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,12 @@
55

66
package io.opentelemetry.instrumentation.logback.appender.v1_0;
77

8-
import static org.assertj.core.api.Assertions.assertThat;
8+
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.assertThat;
99

1010
import ch.qos.logback.classic.LoggerContext;
1111
import ch.qos.logback.classic.util.ContextInitializer;
1212
import ch.qos.logback.core.spi.ContextAware;
1313
import io.opentelemetry.sdk.logs.data.LogRecordData;
14-
import io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions;
1514
import java.net.URL;
1615
import java.util.List;
1716
import org.junit.jupiter.api.BeforeEach;
@@ -65,7 +64,7 @@ void twoLogs() {
6564
List<LogRecordData> logDataList = logRecordExporter.getFinishedLogRecordItems();
6665
assertThat(logDataList).hasSize(1);
6766
LogRecordData logData = logDataList.get(0);
68-
OpenTelemetryAssertions.assertThat(logData)
67+
assertThat(logData)
6968
.hasResource(resource)
7069
.hasInstrumentationScope(instrumentationScopeInfo)
7170
.hasBody("log message 1")

0 commit comments

Comments
 (0)