Skip to content

Commit 20b2726

Browse files
authored
Update test case where endppoint resolution is checked for atleast once (#4854)
1 parent 50d97ac commit 20b2726

File tree

2 files changed

+14
-13
lines changed

2 files changed

+14
-13
lines changed

services/s3/src/test/java/software/amazon/awssdk/services/s3/internal/crossregion/S3CrossRegionAsyncClientTest.java

+8-7
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717

1818
import static org.assertj.core.api.Assertions.assertThat;
1919
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
20+
import static org.mockito.Mockito.atLeastOnce;
2021
import static org.mockito.Mockito.verify;
2122
import static org.mockito.Mockito.when;
2223
import static software.amazon.awssdk.services.s3.internal.crossregion.S3CrossRegionRedirectTestBase.CHANGED_CROSS_REGION;
@@ -437,18 +438,18 @@ void given_AnyRegion_Client_Updates_the_useGlobalEndpointFlag_asFalse(String reg
437438
.thenReturn(CompletableFuture.completedFuture(Endpoint.builder().url(URI.create("https://bucket.s3.amazonaws.com")).build()));
438439

439440
S3AsyncClient s3Client = clientBuilder().crossRegionAccessEnabled(true)
440-
.region(Region.of(region))
441-
.endpointProvider(mockEndpointProvider).build();
441+
.region(Region.of(region))
442+
.endpointProvider(mockEndpointProvider).build();
442443
s3Client.getObject(r -> r.bucket(BUCKET).key(KEY), AsyncResponseTransformer.toBytes()).join();
443444
assertThat(captureInterceptor.endpointProvider).isInstanceOf(BucketEndpointProvider.class);
444445
ArgumentCaptor<S3EndpointParams> collectionCaptor = ArgumentCaptor.forClass(S3EndpointParams.class);
445-
verify(mockEndpointProvider).resolveEndpoint(collectionCaptor.capture());
446-
S3EndpointParams resolvedParams = collectionCaptor.getAllValues().get(0);
447-
assertThat(resolvedParams.region()).isEqualTo(Region.of(region));
448-
assertThat(resolvedParams.useGlobalEndpoint()).isFalse();
446+
verify(mockEndpointProvider, atLeastOnce()).resolveEndpoint(collectionCaptor.capture());
447+
collectionCaptor.getAllValues().forEach(resolvedParams -> {
448+
assertThat(resolvedParams.region()).isEqualTo(Region.of(region));
449+
assertThat(resolvedParams.useGlobalEndpoint()).isFalse();
450+
});
449451
}
450452

451-
452453
private S3AsyncClientBuilder clientBuilder() {
453454
return S3AsyncClient.builder()
454455
.httpClient(mockAsyncHttpClient)

services/s3/src/test/java/software/amazon/awssdk/services/s3/internal/crossregion/S3CrossRegionSyncClientTest.java

+6-6
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,13 @@
1717

1818
import static org.assertj.core.api.Assertions.assertThat;
1919
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
20+
import static org.mockito.Mockito.atLeastOnce;
2021
import static org.mockito.Mockito.verify;
2122
import static org.mockito.Mockito.when;
22-
import static software.amazon.awssdk.services.s3.internal.crossregion.S3CrossRegionAsyncClientTest.customHttpResponse;
2323
import static software.amazon.awssdk.services.s3.internal.crossregion.S3CrossRegionAsyncClientTest.customHttpResponseWithUnknownErrorCode;
2424
import static software.amazon.awssdk.services.s3.internal.crossregion.S3CrossRegionAsyncClientTest.successHttpResponse;
2525
import static software.amazon.awssdk.services.s3.internal.crossregion.S3CrossRegionRedirectTestBase.CHANGED_CROSS_REGION;
2626
import static software.amazon.awssdk.services.s3.internal.crossregion.S3CrossRegionRedirectTestBase.CROSS_REGION;
27-
import static software.amazon.awssdk.services.s3.internal.crossregion.S3CrossRegionRedirectTestBase.CROSS_REGION_BUCKET;
2827
import static software.amazon.awssdk.services.s3.internal.crossregion.S3CrossRegionRedirectTestBase.OVERRIDE_CONFIGURED_REGION;
2928

3029
import java.net.URI;
@@ -271,10 +270,11 @@ void given_AnyRegion_Client_Updates_the_useGlobalEndpointFlag_asFalse(String reg
271270
s3Client.getObject(getObjectBuilder().build());
272271
assertThat(captureInterceptor.endpointProvider).isInstanceOf(BucketEndpointProvider.class);
273272
ArgumentCaptor<S3EndpointParams> collectionCaptor = ArgumentCaptor.forClass(S3EndpointParams.class);
274-
verify(mockEndpointProvider).resolveEndpoint(collectionCaptor.capture());
275-
S3EndpointParams resolvedParams = collectionCaptor.getAllValues().get(0);
276-
assertThat(resolvedParams.region()).isEqualTo(Region.of(region));
277-
assertThat(resolvedParams.useGlobalEndpoint()).isFalse();
273+
verify(mockEndpointProvider, atLeastOnce()).resolveEndpoint(collectionCaptor.capture());
274+
collectionCaptor.getAllValues().forEach(resolvedParams ->{
275+
assertThat(resolvedParams.region()).isEqualTo(Region.of(region));
276+
assertThat(resolvedParams.useGlobalEndpoint()).isFalse();
277+
});
278278
}
279279

280280
private static GetObjectRequest.Builder getObjectBuilder() {

0 commit comments

Comments
 (0)