Use awaitility / higher timeout to reduce flakiness. (#1729)
This commit is contained in:
parent
231ca02400
commit
7fe2cd55be
|
|
@ -331,6 +331,7 @@ configure(opentelemetryProjects) {
|
||||||
libraries.mockito,
|
libraries.mockito,
|
||||||
libraries.mockito_junit_jupiter,
|
libraries.mockito_junit_jupiter,
|
||||||
libraries.assertj,
|
libraries.assertj,
|
||||||
|
libraries.awaitility,
|
||||||
libraries.guava_testlib
|
libraries.guava_testlib
|
||||||
|
|
||||||
testRuntimeOnly libraries.junit_jupiter_engine,
|
testRuntimeOnly libraries.junit_jupiter_engine,
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,6 @@ dependencies {
|
||||||
|
|
||||||
testImplementation "io.grpc:grpc-testing:${grpcVersion}",
|
testImplementation "io.grpc:grpc-testing:${grpcVersion}",
|
||||||
libraries.testcontainers,
|
libraries.testcontainers,
|
||||||
libraries.awaitility,
|
|
||||||
libraries.rest_assured
|
libraries.rest_assured
|
||||||
|
|
||||||
testImplementation project(':opentelemetry-testing-internal')
|
testImplementation project(':opentelemetry-testing-internal')
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,7 @@
|
||||||
package io.opentelemetry.exporters.otlp;
|
package io.opentelemetry.exporters.otlp;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.assertThat;
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
import static org.awaitility.Awaitility.await;
|
||||||
|
|
||||||
import com.google.common.io.Closer;
|
import com.google.common.io.Closer;
|
||||||
import io.grpc.ManagedChannel;
|
import io.grpc.ManagedChannel;
|
||||||
|
|
@ -30,6 +31,7 @@ import io.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest;
|
||||||
import io.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse;
|
import io.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse;
|
||||||
import io.opentelemetry.proto.collector.trace.v1.TraceServiceGrpc;
|
import io.opentelemetry.proto.collector.trace.v1.TraceServiceGrpc;
|
||||||
import io.opentelemetry.proto.trace.v1.ResourceSpans;
|
import io.opentelemetry.proto.trace.v1.ResourceSpans;
|
||||||
|
import io.opentelemetry.sdk.common.CompletableResultCode;
|
||||||
import io.opentelemetry.sdk.trace.TestSpanData;
|
import io.opentelemetry.sdk.trace.TestSpanData;
|
||||||
import io.opentelemetry.sdk.trace.data.SpanData;
|
import io.opentelemetry.sdk.trace.data.SpanData;
|
||||||
import io.opentelemetry.trace.Span.Kind;
|
import io.opentelemetry.trace.Span.Kind;
|
||||||
|
|
@ -138,12 +140,14 @@ class OtlpGrpcSpanExporterTest {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
TimeUnit.MILLISECONDS.sleep(2 * deadlineMs);
|
TimeUnit.MILLISECONDS.sleep(2 * deadlineMs);
|
||||||
assertThat(exporter.export(Collections.singletonList(generateFakeSpan())).isSuccess())
|
CompletableResultCode result1 =
|
||||||
.isTrue();
|
exporter.export(Collections.singletonList(generateFakeSpan()));
|
||||||
|
await().untilAsserted(() -> assertThat(result1.isSuccess()).isTrue());
|
||||||
|
|
||||||
TimeUnit.MILLISECONDS.sleep(2 * deadlineMs);
|
TimeUnit.MILLISECONDS.sleep(2 * deadlineMs);
|
||||||
assertThat(exporter.export(Collections.singletonList(generateFakeSpan())).isSuccess())
|
CompletableResultCode result2 =
|
||||||
.isTrue();
|
exporter.export(Collections.singletonList(generateFakeSpan()));
|
||||||
|
await().untilAsserted(() -> assertThat(result2.isSuccess()).isTrue());
|
||||||
} finally {
|
} finally {
|
||||||
exporter.shutdown();
|
exporter.shutdown();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,6 @@ dependencies {
|
||||||
"io.grpc:grpc-netty-shaded:${grpcVersion}"
|
"io.grpc:grpc-netty-shaded:${grpcVersion}"
|
||||||
|
|
||||||
testImplementation libraries.testcontainers,
|
testImplementation libraries.testcontainers,
|
||||||
libraries.awaitility,
|
|
||||||
libraries.rest_assured
|
libraries.rest_assured
|
||||||
|
|
||||||
signature "org.codehaus.mojo.signature:java18:1.0@signature"
|
signature "org.codehaus.mojo.signature:java18:1.0@signature"
|
||||||
|
|
|
||||||
|
|
@ -14,8 +14,7 @@ dependencies {
|
||||||
project(':opentelemetry-exporters-inmemory'),
|
project(':opentelemetry-exporters-inmemory'),
|
||||||
libraries.junit,
|
libraries.junit,
|
||||||
libraries.assertj,
|
libraries.assertj,
|
||||||
libraries.slf4jsimple,
|
libraries.slf4jsimple
|
||||||
libraries.awaitility
|
|
||||||
}
|
}
|
||||||
test {
|
test {
|
||||||
testLogging.showStandardStreams = true
|
testLogging.showStandardStreams = true
|
||||||
|
|
|
||||||
|
|
@ -20,8 +20,7 @@ dependencies {
|
||||||
testCompileOnly libraries.auto_value_annotation
|
testCompileOnly libraries.auto_value_annotation
|
||||||
|
|
||||||
testImplementation project(':opentelemetry-testing-internal')
|
testImplementation project(':opentelemetry-testing-internal')
|
||||||
testImplementation libraries.junit_pioneer,
|
testImplementation libraries.junit_pioneer
|
||||||
libraries.awaitility
|
|
||||||
|
|
||||||
signature "org.codehaus.mojo.signature:java18:1.0@signature"
|
signature "org.codehaus.mojo.signature:java18:1.0@signature"
|
||||||
signature "net.sf.androidscents.signature:android-api-level-24:7.0_r2@signature"
|
signature "net.sf.androidscents.signature:android-api-level-24:7.0_r2@signature"
|
||||||
|
|
|
||||||
|
|
@ -240,7 +240,7 @@ class CompletableResultCodeTest {
|
||||||
result.succeed();
|
result.succeed();
|
||||||
})
|
})
|
||||||
.start();
|
.start();
|
||||||
assertThat(result.join(500, TimeUnit.MILLISECONDS).isSuccess()).isTrue();
|
assertThat(result.join(10, TimeUnit.SECONDS).isSuccess()).isTrue();
|
||||||
// Already completed, synchronous call.
|
// Already completed, synchronous call.
|
||||||
assertThat(result.join(0, TimeUnit.NANOSECONDS).isSuccess()).isTrue();
|
assertThat(result.join(0, TimeUnit.NANOSECONDS).isSuccess()).isTrue();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,8 +24,7 @@ dependencies {
|
||||||
testCompile project(path: ':opentelemetry-sdk-common', configuration: 'testClasses')
|
testCompile project(path: ':opentelemetry-sdk-common', configuration: 'testClasses')
|
||||||
|
|
||||||
testImplementation project(':opentelemetry-testing-internal')
|
testImplementation project(':opentelemetry-testing-internal')
|
||||||
testImplementation libraries.junit_pioneer,
|
testImplementation libraries.junit_pioneer
|
||||||
libraries.awaitility
|
|
||||||
|
|
||||||
signature "org.codehaus.mojo.signature:java18:1.0@signature"
|
signature "org.codehaus.mojo.signature:java18:1.0@signature"
|
||||||
signature "net.sf.androidscents.signature:android-api-level-24:7.0_r2@signature"
|
signature "net.sf.androidscents.signature:android-api-level-24:7.0_r2@signature"
|
||||||
|
|
|
||||||
|
|
@ -21,8 +21,7 @@ dependencies {
|
||||||
libraries.protobuf_util
|
libraries.protobuf_util
|
||||||
|
|
||||||
testImplementation "io.grpc:grpc-testing:${grpcVersion}",
|
testImplementation "io.grpc:grpc-testing:${grpcVersion}",
|
||||||
libraries.testcontainers,
|
libraries.testcontainers
|
||||||
libraries.awaitility
|
|
||||||
|
|
||||||
testRuntime "io.grpc:grpc-netty-shaded:${grpcVersion}"
|
testRuntime "io.grpc:grpc-netty-shaded:${grpcVersion}"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,6 @@ dependencies {
|
||||||
implementation project(':opentelemetry-api'),
|
implementation project(':opentelemetry-api'),
|
||||||
project(':opentelemetry-sdk'),
|
project(':opentelemetry-sdk'),
|
||||||
project(':opentelemetry-exporters-inmemory'),
|
project(':opentelemetry-exporters-inmemory'),
|
||||||
libraries.awaitility,
|
|
||||||
libraries.guava
|
libraries.guava
|
||||||
|
|
||||||
signature "org.codehaus.mojo.signature:java18:1.0@signature"
|
signature "org.codehaus.mojo.signature:java18:1.0@signature"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue