66package io .opentelemetry .instrumentation .awssdk .v1_11 ;
77
88import static io .opentelemetry .api .common .AttributeKey .stringKey ;
9+ import static io .opentelemetry .instrumentation .testing .util .TestLatestDeps .testLatestDeps ;
910import static io .opentelemetry .sdk .testing .assertj .OpenTelemetryAssertions .equalTo ;
1011import static io .opentelemetry .sdk .testing .assertj .OpenTelemetryAssertions .satisfies ;
1112import static io .opentelemetry .semconv .HttpAttributes .HTTP_REQUEST_METHOD ;
3839import io .opentelemetry .api .trace .SpanKind ;
3940import io .opentelemetry .instrumentation .test .utils .PortUtils ;
4041import io .opentelemetry .instrumentation .testing .junit .InstrumentationExtension ;
42+ import io .opentelemetry .sdk .testing .assertj .AttributeAssertion ;
4143import org .elasticmq .rest .sqs .SQSRestServer ;
4244import org .elasticmq .rest .sqs .SQSRestServerBuilder ;
4345import org .junit .jupiter .api .AfterEach ;
@@ -56,6 +58,12 @@ public abstract class AbstractSqsSuppressReceiveSpansTest {
5658 protected abstract AmazonSQSAsyncClientBuilder configureClient (
5759 AmazonSQSAsyncClientBuilder client );
5860
61+ private static AttributeAssertion requestId () {
62+ return testLatestDeps ()
63+ ? equalTo (AWS_REQUEST_ID , null )
64+ : satisfies (AWS_REQUEST_ID , val -> val .isInstanceOf (String .class ));
65+ }
66+
5967 @ BeforeEach
6068 void setUp () {
6169 sqsPort = PortUtils .findOpenPort ();
@@ -105,7 +113,7 @@ void testSimpleSqsProducerConsumerServices() {
105113 .hasAttributesSatisfyingExactly (
106114 equalTo (stringKey ("aws.agent" ), "java-aws-sdk" ),
107115 equalTo (stringKey ("aws.queue.name" ), "testSdkSqs" ),
108- satisfies ( AWS_REQUEST_ID , val -> val . isInstanceOf ( String . class ) ),
116+ requestId ( ),
109117 equalTo (RPC_SYSTEM , "aws-api" ),
110118 equalTo (RPC_SERVICE , "AmazonSQS" ),
111119 equalTo (RPC_METHOD , "CreateQueue" ),
@@ -126,7 +134,7 @@ void testSimpleSqsProducerConsumerServices() {
126134 equalTo (
127135 AWS_SQS_QUEUE_URL ,
128136 "http://localhost:" + sqsPort + "/000000000000/testSdkSqs" ),
129- satisfies ( AWS_REQUEST_ID , val -> val . isInstanceOf ( String . class ) ),
137+ requestId ( ),
130138 equalTo (RPC_SYSTEM , "aws-api" ),
131139 equalTo (RPC_SERVICE , "AmazonSQS" ),
132140 equalTo (RPC_METHOD , "SendMessage" ),
@@ -150,7 +158,7 @@ void testSimpleSqsProducerConsumerServices() {
150158 equalTo (
151159 AWS_SQS_QUEUE_URL ,
152160 "http://localhost:" + sqsPort + "/000000000000/testSdkSqs" ),
153- satisfies ( AWS_REQUEST_ID , val -> val . isInstanceOf ( String . class ) ),
161+ requestId ( ),
154162 equalTo (RPC_SYSTEM , "aws-api" ),
155163 equalTo (RPC_SERVICE , "AmazonSQS" ),
156164 equalTo (RPC_METHOD , "ReceiveMessage" ),
@@ -202,7 +210,7 @@ void testSimpleSqsProducerConsumerServicesWithParentSpan() {
202210 .hasAttributesSatisfyingExactly (
203211 equalTo (stringKey ("aws.agent" ), "java-aws-sdk" ),
204212 equalTo (stringKey ("aws.queue.name" ), "testSdkSqs" ),
205- satisfies ( AWS_REQUEST_ID , val -> val . isInstanceOf ( String . class ) ),
213+ requestId ( ),
206214 equalTo (RPC_SYSTEM , "aws-api" ),
207215 equalTo (RPC_SERVICE , "AmazonSQS" ),
208216 equalTo (RPC_METHOD , "CreateQueue" ),
@@ -223,7 +231,7 @@ void testSimpleSqsProducerConsumerServicesWithParentSpan() {
223231 equalTo (
224232 AWS_SQS_QUEUE_URL ,
225233 "http://localhost:" + sqsPort + "/000000000000/testSdkSqs" ),
226- satisfies ( AWS_REQUEST_ID , val -> val . isInstanceOf ( String . class ) ),
234+ requestId ( ),
227235 equalTo (RPC_SYSTEM , "aws-api" ),
228236 equalTo (RPC_SERVICE , "AmazonSQS" ),
229237 equalTo (RPC_METHOD , "SendMessage" ),
@@ -247,7 +255,7 @@ void testSimpleSqsProducerConsumerServicesWithParentSpan() {
247255 equalTo (
248256 AWS_SQS_QUEUE_URL ,
249257 "http://localhost:" + sqsPort + "/000000000000/testSdkSqs" ),
250- satisfies ( AWS_REQUEST_ID , val -> val . isInstanceOf ( String . class ) ),
258+ requestId ( ),
251259 equalTo (RPC_SYSTEM , "aws-api" ),
252260 equalTo (RPC_SERVICE , "AmazonSQS" ),
253261 equalTo (RPC_METHOD , "ReceiveMessage" ),
@@ -282,7 +290,7 @@ void testSimpleSqsProducerConsumerServicesWithParentSpan() {
282290 equalTo (
283291 AWS_SQS_QUEUE_URL ,
284292 "http://localhost:" + sqsPort + "/000000000000/testSdkSqs" ),
285- satisfies ( AWS_REQUEST_ID , val -> val . isInstanceOf ( String . class ) ),
293+ requestId ( ),
286294 equalTo (RPC_SYSTEM , "aws-api" ),
287295 equalTo (RPC_SERVICE , "AmazonSQS" ),
288296 equalTo (RPC_METHOD , "ReceiveMessage" ),
0 commit comments