Skip to content

Commit 0f6a19d

Browse files
committed
Fixes for tests
1 parent 9535ba7 commit 0f6a19d

File tree

4 files changed

+56
-18
lines changed

4 files changed

+56
-18
lines changed

services/elasticbeanstalk/src/main/resources/codegen-resources/customization.config

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,8 @@
178178
"describeEnvironmentManagedActionHistory",
179179
"describeEnvironmentManagedActions",
180180
"describeInstancesHealth",
181-
"describeEnvironmentHealth"
181+
"describeEnvironmentHealth",
182+
"describeConfigurationOptions"
182183
],
183184
"verifiedSimpleMethods" : ["createStorageLocation"]
184185
}

services/s3/src/it/java/software/amazon/awssdk/services/s3/BucketAccelerateIntegrationTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@
2121
import java.util.List;
2222
import org.junit.AfterClass;
2323
import org.junit.BeforeClass;
24+
import org.junit.Ignore;
2425
import org.junit.Test;
26+
import software.amazon.awssdk.annotation.ReviewBeforeRelease;
2527
import software.amazon.awssdk.regions.Region;
2628
import software.amazon.awssdk.services.s3.model.AccelerateConfiguration;
2729
import software.amazon.awssdk.services.s3.model.BucketAccelerateStatus;
@@ -50,6 +52,10 @@
5052
/**
5153
* Integration tests for S3 bucket accelerate configuration.
5254
*/
55+
@ReviewBeforeRelease("These tests are a bit flaky. Looks like S3 returns 307 Temporary Redirect occasionally " +
56+
"for a newly accelerated bucket. Not sure what the right fix is without following redirects " +
57+
"which we don't want to do for other reasons.")
58+
@Ignore
5359
public class BucketAccelerateIntegrationTest extends S3IntegrationTestBase {
5460

5561
private static final String US_BUCKET_NAME = "s3-accelerate-us-east-1-" + System.currentTimeMillis();

services/s3/src/main/java/software/amazon/awssdk/services/s3/handlers/CreateBucketInterceptor.java

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,16 +38,24 @@ public SdkRequest modifyRequest(Context.ModifyRequest context, ExecutionAttribut
3838
if (request.createBucketConfiguration() == null || request.createBucketConfiguration().locationConstraint() == null) {
3939
Region region = executionAttributes.getAttribute(AwsExecutionAttributes.AWS_REGION);
4040
sdkRequest = request.toBuilder()
41-
.createBucketConfiguration(CreateBucketConfiguration.builder()
42-
.locationConstraint(region.value())
43-
.build())
41+
.createBucketConfiguration(toLocationConstraint(region))
4442
.build();
4543
}
4644
}
4745

4846
return sdkRequest;
4947
}
5048

49+
private CreateBucketConfiguration toLocationConstraint(Region region) {
50+
if (region.equals(Region.US_EAST_1)) {
51+
// us-east-1 requires no location restraint. See http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUT.html
52+
return null;
53+
}
54+
return CreateBucketConfiguration.builder()
55+
.locationConstraint(region.value())
56+
.build();
57+
}
58+
5159
/**
5260
* Validates that the name of the bucket being requested to be created
5361
* is a valid S3 bucket name according to their guidelines. If the bucket

services/s3/src/test/java/software/amazon/awssdk/services/s3/handlers/CreateBucketInterceptorTest.java

Lines changed: 37 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,14 @@ public void modifyRequest_DoesNotOverrideExistingLocationConstraint() {
3232
CreateBucketRequest request = CreateBucketRequest.builder()
3333
.bucket("test-bucket")
3434
.createBucketConfiguration(CreateBucketConfiguration.builder()
35-
.locationConstraint("us-west-2")
35+
.locationConstraint(
36+
"us-west-2")
3637
.build())
3738
.build();
3839

3940
Context.ModifyRequest context = () -> request;
40-
ExecutionAttributes attributes = new ExecutionAttributes().putAttribute(AwsExecutionAttributes.AWS_REGION, Region.US_EAST_1);
41+
ExecutionAttributes attributes = new ExecutionAttributes()
42+
.putAttribute(AwsExecutionAttributes.AWS_REGION, Region.US_EAST_1);
4143

4244
SdkRequest modifiedRequest = new CreateBucketInterceptor().modifyRequest(context, attributes);
4345
String locationConstraint = ((CreateBucketRequest) modifiedRequest).createBucketConfiguration().locationConstraint();
@@ -47,33 +49,54 @@ public void modifyRequest_DoesNotOverrideExistingLocationConstraint() {
4749

4850
@Test
4951
public void modifyRequest_UpdatesLocationConstraint_When_NullCreateBucketConfiguration() {
50-
CreateBucketRequest request = CreateBucketRequest.builder()
51-
.bucket("test-bucket")
52-
.build();
52+
CreateBucketRequest request = CreateBucketRequest.builder()
53+
.bucket("test-bucket")
54+
.build();
5355

5456
Context.ModifyRequest context = () -> request;
55-
ExecutionAttributes attributes = new ExecutionAttributes().putAttribute(AwsExecutionAttributes.AWS_REGION, Region.US_EAST_1);
57+
ExecutionAttributes attributes = new ExecutionAttributes()
58+
.putAttribute(AwsExecutionAttributes.AWS_REGION, Region.US_EAST_2);
5659

5760
SdkRequest modifiedRequest = new CreateBucketInterceptor().modifyRequest(context, attributes);
5861
String locationConstraint = ((CreateBucketRequest) modifiedRequest).createBucketConfiguration().locationConstraint();
5962

60-
assertThat(locationConstraint).isEqualToIgnoringCase("us-east-1");
63+
assertThat(locationConstraint).isEqualToIgnoringCase("us-east-2");
6164
}
6265

6366
@Test
6467
public void modifyRequest_UpdatesLocationConstraint_When_NullLocationConstraint() {
65-
CreateBucketRequest request = CreateBucketRequest.builder()
66-
.bucket("test-bucket")
67-
.createBucketConfiguration(CreateBucketConfiguration.builder()
68-
.build())
69-
.build();
68+
CreateBucketRequest request = CreateBucketRequest.builder()
69+
.bucket("test-bucket")
70+
.createBucketConfiguration(CreateBucketConfiguration.builder()
71+
.build())
72+
.build();
7073

7174
Context.ModifyRequest context = () -> request;
72-
ExecutionAttributes attributes = new ExecutionAttributes().putAttribute(AwsExecutionAttributes.AWS_REGION, Region.US_EAST_1);
75+
ExecutionAttributes attributes = new ExecutionAttributes()
76+
.putAttribute(AwsExecutionAttributes.AWS_REGION, Region.US_WEST_2);
7377

7478
SdkRequest modifiedRequest = new CreateBucketInterceptor().modifyRequest(context, attributes);
7579
String locationConstraint = ((CreateBucketRequest) modifiedRequest).createBucketConfiguration().locationConstraint();
7680

77-
assertThat(locationConstraint).isEqualToIgnoringCase("us-east-1");
81+
assertThat(locationConstraint).isEqualToIgnoringCase("us-west-2");
82+
}
83+
84+
/**
85+
* For us-east-1 there must not be a location constraint (or containing CreateBucketConfiguration) sent.
86+
*/
87+
@Test
88+
public void modifyRequest_UsEast1_UsesNullBucketConfiguration() {
89+
CreateBucketRequest request = CreateBucketRequest.builder()
90+
.bucket("test-bucket")
91+
.createBucketConfiguration(CreateBucketConfiguration.builder()
92+
.build())
93+
.build();
94+
95+
Context.ModifyRequest context = () -> request;
96+
ExecutionAttributes attributes = new ExecutionAttributes()
97+
.putAttribute(AwsExecutionAttributes.AWS_REGION, Region.US_EAST_1);
98+
99+
SdkRequest modifiedRequest = new CreateBucketInterceptor().modifyRequest(context, attributes);
100+
assertThat(((CreateBucketRequest) modifiedRequest).createBucketConfiguration()).isNull();
78101
}
79102
}

0 commit comments

Comments
 (0)