|
20 | 20 | import java.util.stream.IntStream;
|
21 | 21 |
|
22 | 22 | import com.amazonaws.services.s3.AmazonS3;
|
23 |
| -import com.amazonaws.services.s3.model.GetObjectRequest; |
24 |
| -import com.amazonaws.services.s3.model.PutObjectRequest; |
25 |
| -import com.amazonaws.services.s3.model.S3Object; |
26 |
| -import com.amazonaws.services.s3.model.SSEAwsKeyManagementParams; |
| 23 | +import com.amazonaws.services.s3.model.*; |
27 | 24 | import com.amazonaws.services.sqs.AmazonSQS;
|
28 | 25 | import com.amazonaws.services.sqs.AmazonSQSClient;
|
29 | 26 | import com.amazonaws.services.sqs.model.*;
|
|
36 | 33 | import software.amazon.payloadoffloading.PayloadS3Pointer;
|
37 | 34 |
|
38 | 35 | import static org.mockito.Matchers.eq;
|
39 |
| -import static org.mockito.Mockito.*; |
| 36 | +import static org.mockito.Mockito.mock; |
| 37 | +import static org.mockito.Mockito.isA; |
| 38 | +import static org.mockito.Mockito.when; |
| 39 | +import static org.mockito.Mockito.spy; |
| 40 | +import static org.mockito.Mockito.verify; |
| 41 | +import static org.mockito.Mockito.never; |
| 42 | +import static org.mockito.Mockito.verifyZeroInteractions; |
| 43 | +import static org.mockito.Mockito.times; |
| 44 | +import static org.mockito.Mockito.any; |
| 45 | +import static org.mockito.Mockito.anyString; |
40 | 46 |
|
41 | 47 | /**
|
42 | 48 | * Tests the AmazonSQSExtendedClient class.
|
@@ -489,6 +495,24 @@ public void testDefaultExtendedClientDeletesObjectsFromS3UponDeleteBatch() {
|
489 | 495 | verify(mockS3, times(batchSize)).deleteObject(eq(S3_BUCKET_NAME), anyString());
|
490 | 496 | }
|
491 | 497 |
|
| 498 | + @Test |
| 499 | + public void testWhenSendMessageWIthCannedAccessControlListDefined() { |
| 500 | + CannedAccessControlList expected = CannedAccessControlList.BucketOwnerFullControl; |
| 501 | + String messageBody = generateStringWithLength(MORE_THAN_SQS_SIZE_LIMIT); |
| 502 | + ExtendedClientConfiguration extendedClientConfiguration = new ExtendedClientConfiguration() |
| 503 | + .withPayloadSupportEnabled(mockS3, S3_BUCKET_NAME).withCannedAccessControlList(expected); |
| 504 | + AmazonSQS sqsExtended = spy(new AmazonSQSExtendedClient(mockSqsBackend, extendedClientConfiguration)); |
| 505 | + |
| 506 | + SendMessageRequest messageRequest = new SendMessageRequest(SQS_QUEUE_URL, messageBody); |
| 507 | + sqsExtended.sendMessage(messageRequest); |
| 508 | + |
| 509 | + ArgumentCaptor<PutObjectRequest> captor = ArgumentCaptor.forClass(PutObjectRequest.class); |
| 510 | + |
| 511 | + verify(mockS3).putObject(captor.capture()); |
| 512 | + |
| 513 | + Assert.assertEquals(expected, captor.getValue().getCannedAcl()); |
| 514 | + } |
| 515 | + |
492 | 516 | private void testReceiveMessage_when_MessageIsLarge(String reservedAttributeName) throws Exception {
|
493 | 517 | Message message = new Message().addMessageAttributesEntry(reservedAttributeName, mock(MessageAttributeValue.class));
|
494 | 518 | String pointer = new PayloadS3Pointer(S3_BUCKET_NAME, "S3Key").toJson();
|
|
0 commit comments