@@ -57,6 +57,7 @@ public class S3ObjectIteratorContainerTest {
5757 private AmazonS3 amazonS3 ;
5858 private S3Client s3Client ;
5959 private S3AsyncClient s3AsyncClient ;
60+ private S3AsyncClient s3AsyncCrtClient ;
6061
6162 @ BeforeAll
6263 public static void beforeAll () {
@@ -85,6 +86,11 @@ public void setUp() {
8586 .region (Region .of (awsRegion ))
8687 .credentialsProvider (StaticCredentialsProvider .create (AwsBasicCredentials .create (awsAccessKey , awsSecretKey )))
8788 .build ();
89+ this .s3AsyncCrtClient = S3AsyncClient .crtBuilder ()
90+ .endpointOverride (awsS3Uri )
91+ .region (Region .of (awsRegion ))
92+ .credentialsProvider (StaticCredentialsProvider .create (AwsBasicCredentials .create (awsAccessKey , awsSecretKey )))
93+ .build ();
8894
8995 if (createS3Bucket ) {
9096 CreateBucketResponse response = this .s3Client .createBucket (r -> r .bucket (s3BucketName ));
@@ -135,6 +141,19 @@ public void testS3ObjectIteratorAsync() {
135141 Assertions .assertEquals (s3ObjectCount , count );
136142 }
137143
144+ @ Test
145+ public void testS3ObjectIteratorAsyncCrt () {
146+ System .out .println ("Testing: " + AsyncS3ObjectIterator .class .getCanonicalName ());
147+ ListObjectsV2Request listObjectsV2Request = ListObjectsV2Request .builder ()
148+ .bucket (s3BucketName )
149+ .prefix (s3KeyPrefix )
150+ .build ();
151+ AsyncS3ObjectIterator asyncS3ObjectIterator = new AsyncS3ObjectIterator (this .s3AsyncCrtClient , listObjectsV2Request , Duration .ofSeconds (30 ));
152+ long count = StreamSupport .stream (Spliterators .spliteratorUnknownSize (asyncS3ObjectIterator , Spliterator .ORDERED ), false )
153+ .count ();
154+ Assertions .assertEquals (s3ObjectCount , count );
155+ }
156+
138157 @ Test
139158 public void testS3ObjectSummaryIterator () {
140159 System .out .println ("Testing: " + S3ObjectSummaryIterator .class .getCanonicalName ());
0 commit comments