Skip to content

Commit 3123d52

Browse files
committed
convert groovy smoke tests to java
1 parent bd421dd commit 3123d52

File tree

3 files changed

+40
-46
lines changed

3 files changed

+40
-46
lines changed

smoke-tests/src/test/java/io/opentelemetry/smoketest/JavaTelemetryRetriever.java

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,13 @@
1212
import io.opentelemetry.testing.internal.armeria.client.WebClient;
1313
import io.opentelemetry.testing.internal.jackson.core.JsonProcessingException;
1414
import io.opentelemetry.testing.internal.jackson.databind.ObjectMapper;
15+
import io.opentelemetry.testing.internal.proto.collector.logs.v1.ExportLogsServiceRequest;
16+
import io.opentelemetry.testing.internal.proto.collector.metrics.v1.ExportMetricsServiceRequest;
1517
import io.opentelemetry.testing.internal.proto.collector.trace.v1.ExportTraceServiceRequest;
1618
import io.opentelemetry.testing.internal.protobuf.GeneratedMessage;
1719
import io.opentelemetry.testing.internal.protobuf.InvalidProtocolBufferException;
1820
import io.opentelemetry.testing.internal.protobuf.util.JsonFormat;
1921
import java.util.Collection;
20-
import java.util.Collections;
2122
import java.util.List;
2223
import java.util.concurrent.TimeUnit;
2324
import java.util.function.Supplier;
@@ -45,23 +46,21 @@ public List<SpanData> waitForTraces() {
4546
}
4647

4748
public Collection<MetricData> waitForMetrics() {
48-
// try {
49-
// return TelemetryConverter.getMetricsData(singletonList(waitForContent("get-metrics")));
50-
// } catch (InterruptedException e) {
51-
// throw new RuntimeException(e);
52-
// }
53-
// todo
54-
return Collections.emptyList();
49+
Collection<ExportMetricsServiceRequest> requests =
50+
waitForTelemetry("get-metrics", () -> ExportMetricsServiceRequest.newBuilder());
51+
return TelemetryConverter.getMetricsData(
52+
requests.stream()
53+
.flatMap(r -> r.getResourceMetricsList().stream())
54+
.collect(Collectors.toList()));
5555
}
5656

5757
public Collection<LogRecordData> waitForLogs() {
58-
// try {
59-
// return TelemetryConverter.getLogRecordData(singletonList(waitForContent("get-logs")));
60-
// } catch (InterruptedException e) {
61-
// throw new RuntimeException(e);
62-
// }
63-
// todo
64-
return Collections.emptyList();
58+
Collection<ExportLogsServiceRequest> requests =
59+
waitForTelemetry("get-logs", () -> ExportLogsServiceRequest.newBuilder());
60+
return TelemetryConverter.getLogRecordData(
61+
requests.stream()
62+
.flatMap(r -> r.getResourceLogsList().stream())
63+
.collect(Collectors.toList()));
6564
}
6665

6766
@SuppressWarnings({"unchecked", "rawtypes"})

testing-common/src/main/java/io/opentelemetry/instrumentation/testing/internal/TelemetryConverter.java

Lines changed: 2 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,6 @@
4444
import io.opentelemetry.sdk.trace.data.LinkData;
4545
import io.opentelemetry.sdk.trace.data.SpanData;
4646
import io.opentelemetry.sdk.trace.data.StatusData;
47-
import io.opentelemetry.testing.internal.proto.collector.logs.v1.ExportLogsServiceRequest;
48-
import io.opentelemetry.testing.internal.proto.collector.metrics.v1.ExportMetricsServiceRequest;
4947
import io.opentelemetry.testing.internal.proto.common.v1.AnyValue;
5048
import io.opentelemetry.testing.internal.proto.common.v1.ArrayValue;
5149
import io.opentelemetry.testing.internal.proto.common.v1.InstrumentationScope;
@@ -67,7 +65,6 @@
6765
import io.opentelemetry.testing.internal.proto.trace.v1.ScopeSpans;
6866
import io.opentelemetry.testing.internal.proto.trace.v1.Span;
6967
import io.opentelemetry.testing.internal.proto.trace.v1.Status;
70-
import io.opentelemetry.testing.internal.protobuf.InvalidProtocolBufferException;
7168
import java.util.ArrayList;
7269
import java.util.Collection;
7370
import java.util.List;
@@ -168,19 +165,7 @@ public static List<SpanData> getSpanData(Collection<ResourceSpans> allResourceSp
168165
return spans;
169166
}
170167

171-
public static List<MetricData> getMetricsData(List<byte[]> exportRequests) {
172-
List<ResourceMetrics> allResourceMetrics =
173-
exportRequests.stream()
174-
.map(
175-
serialized -> {
176-
try {
177-
return ExportMetricsServiceRequest.parseFrom(serialized);
178-
} catch (InvalidProtocolBufferException e) {
179-
throw new AssertionError(e);
180-
}
181-
})
182-
.flatMap(request -> request.getResourceMetricsList().stream())
183-
.collect(toList());
168+
public static List<MetricData> getMetricsData(Collection<ResourceMetrics> allResourceMetrics) {
184169
List<MetricData> metrics = new ArrayList<>();
185170
for (ResourceMetrics resourceMetrics : allResourceMetrics) {
186171
Resource resource = resourceMetrics.getResource();
@@ -203,19 +188,7 @@ public static List<MetricData> getMetricsData(List<byte[]> exportRequests) {
203188
return metrics;
204189
}
205190

206-
public static List<LogRecordData> getLogRecordData(List<byte[]> exportRequests) {
207-
List<ResourceLogs> allResourceLogs =
208-
exportRequests.stream()
209-
.map(
210-
serialized -> {
211-
try {
212-
return ExportLogsServiceRequest.parseFrom(serialized);
213-
} catch (InvalidProtocolBufferException e) {
214-
throw new AssertionError(e);
215-
}
216-
})
217-
.flatMap(request -> request.getResourceLogsList().stream())
218-
.collect(toList());
191+
public static List<LogRecordData> getLogRecordData(List<ResourceLogs> allResourceLogs) {
219192
List<LogRecordData> logs = new ArrayList<>();
220193
for (ResourceLogs resourceLogs : allResourceLogs) {
221194
Resource resource = resourceLogs.getResource();

testing-common/src/main/java/io/opentelemetry/javaagent/testing/common/AgentTestingExporterAccess.java

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
import io.opentelemetry.sdk.logs.data.LogRecordData;
1212
import io.opentelemetry.sdk.metrics.data.MetricData;
1313
import io.opentelemetry.sdk.trace.data.SpanData;
14+
import io.opentelemetry.testing.internal.proto.collector.logs.v1.ExportLogsServiceRequest;
15+
import io.opentelemetry.testing.internal.proto.collector.metrics.v1.ExportMetricsServiceRequest;
1416
import io.opentelemetry.testing.internal.proto.collector.trace.v1.ExportTraceServiceRequest;
1517
import io.opentelemetry.testing.internal.proto.trace.v1.ResourceSpans;
1618
import io.opentelemetry.testing.internal.protobuf.InvalidProtocolBufferException;
@@ -104,7 +106,17 @@ public static List<SpanData> getExportedSpans() {
104106
public static List<MetricData> getExportedMetrics() {
105107
try {
106108
return TelemetryConverter.getMetricsData(
107-
(List<byte[]>) getMetricExportRequests.invokeExact());
109+
((List<byte[]>) getMetricExportRequests.invokeExact()).stream()
110+
.map(
111+
serialized -> {
112+
try {
113+
return ExportMetricsServiceRequest.parseFrom(serialized);
114+
} catch (InvalidProtocolBufferException e) {
115+
throw new AssertionError(e);
116+
}
117+
})
118+
.flatMap(request -> request.getResourceMetricsList().stream())
119+
.collect(toList()));
108120
} catch (Throwable t) {
109121
throw new AssertionError("Could not invoke getSpanExportRequests", t);
110122
}
@@ -113,7 +125,17 @@ public static List<MetricData> getExportedMetrics() {
113125
@SuppressWarnings("unchecked")
114126
public static List<LogRecordData> getExportedLogRecords() {
115127
try {
116-
return TelemetryConverter.getLogRecordData((List<byte[]>) getLogExportRequests.invokeExact());
128+
return TelemetryConverter.getLogRecordData(((List<byte[]>) getLogExportRequests.invokeExact()).stream()
129+
.map(
130+
serialized -> {
131+
try {
132+
return ExportLogsServiceRequest.parseFrom(serialized);
133+
} catch (InvalidProtocolBufferException e) {
134+
throw new AssertionError(e);
135+
}
136+
})
137+
.flatMap(request -> request.getResourceLogsList().stream())
138+
.collect(toList()));
117139
} catch (Throwable t) {
118140
throw new AssertionError("Could not invoke getLogExportRequests", t);
119141
}

0 commit comments

Comments
 (0)