Skip to content

Commit 86b1e51

Browse files
authored
Fix race condition when running s3-control integration tests on multiple platforms at the same time.
1 parent 3066a29 commit 86b1e51

File tree

1 file changed

+13
-51
lines changed

1 file changed

+13
-51
lines changed

aws-cpp-sdk-s3control-integration-tests/S3ControlTest.cpp

+13-51
Original file line numberDiff line numberDiff line change
@@ -224,56 +224,6 @@ namespace
224224
}
225225
};
226226

227-
TEST_F(S3ControlTest, TestPublicAccessBlockOperations)
228-
{
229-
GetPublicAccessBlockRequest getPublicAccessBlockRequest;
230-
getPublicAccessBlockRequest.SetAccountId(m_accountId);
231-
auto getPublicAccessBlockOutcome = m_client.GetPublicAccessBlock(getPublicAccessBlockRequest);
232-
ASSERT_FALSE(getPublicAccessBlockOutcome.IsSuccess());
233-
ASSERT_EQ(S3ControlErrors::NO_SUCH_PUBLIC_ACCESS_BLOCK_CONFIGURATION, getPublicAccessBlockOutcome.GetError().GetErrorType());
234-
235-
PutPublicAccessBlockRequest putPublicAccessBlockRequest;
236-
PublicAccessBlockConfiguration publicAccessBlockConfiguration;
237-
publicAccessBlockConfiguration.SetBlockPublicPolicy(true);
238-
putPublicAccessBlockRequest.SetPublicAccessBlockConfiguration(publicAccessBlockConfiguration);
239-
putPublicAccessBlockRequest.SetAccountId(m_accountId);
240-
auto putPublicAccessBlockOutcome = m_client.PutPublicAccessBlock(putPublicAccessBlockRequest);
241-
ASSERT_TRUE(putPublicAccessBlockOutcome.IsSuccess());
242-
243-
DeletePublicAccessBlockRequest deletePublicAccessBlockRequest;
244-
deletePublicAccessBlockRequest.SetAccountId(m_accountId);
245-
auto deletePublicAccessBlockOutcome = m_client.DeletePublicAccessBlock(deletePublicAccessBlockRequest);
246-
ASSERT_TRUE(deletePublicAccessBlockOutcome.IsSuccess());
247-
}
248-
249-
TEST_F(S3ControlTest, TestDualStackEndpoint)
250-
{
251-
ClientConfiguration config;
252-
config.region = Aws::Region::US_EAST_1;
253-
config.scheme = Scheme::HTTPS;
254-
config.useDualStack = true;
255-
S3ControlClient s3ControlClient(config);
256-
257-
GetPublicAccessBlockRequest getPublicAccessBlockRequest;
258-
getPublicAccessBlockRequest.SetAccountId(m_accountId);
259-
auto getPublicAccessBlockOutcome = s3ControlClient.GetPublicAccessBlock(getPublicAccessBlockRequest);
260-
ASSERT_FALSE(getPublicAccessBlockOutcome.IsSuccess());
261-
ASSERT_EQ(S3ControlErrors::NO_SUCH_PUBLIC_ACCESS_BLOCK_CONFIGURATION, getPublicAccessBlockOutcome.GetError().GetErrorType());
262-
263-
PutPublicAccessBlockRequest putPublicAccessBlockRequest;
264-
PublicAccessBlockConfiguration publicAccessBlockConfiguration;
265-
publicAccessBlockConfiguration.SetIgnorePublicAcls(true);
266-
putPublicAccessBlockRequest.SetPublicAccessBlockConfiguration(publicAccessBlockConfiguration);
267-
putPublicAccessBlockRequest.SetAccountId(m_accountId);
268-
auto putPublicAccessBlockOutcome = s3ControlClient.PutPublicAccessBlock(putPublicAccessBlockRequest);
269-
ASSERT_TRUE(putPublicAccessBlockOutcome.IsSuccess());
270-
271-
DeletePublicAccessBlockRequest deletePublicAccessBlockRequest;
272-
deletePublicAccessBlockRequest.SetAccountId(m_accountId);
273-
auto deletePublicAccessBlockOutcome = s3ControlClient.DeletePublicAccessBlock(deletePublicAccessBlockRequest);
274-
ASSERT_TRUE(deletePublicAccessBlockOutcome.IsSuccess());
275-
}
276-
277227
TEST_F(S3ControlTest, TestInvalidAccountId)
278228
{
279229
PutPublicAccessBlockRequest putPublicAccessBlockRequest;
@@ -285,7 +235,7 @@ namespace
285235
auto putPublicAccessBlockOutcome = m_client.PutPublicAccessBlock(putPublicAccessBlockRequest);
286236
ASSERT_FALSE(putPublicAccessBlockOutcome.IsSuccess());
287237

288-
// The account id shoud be a valid DNS label. Otherwise we will not make the request.
238+
// The account id should be a valid DNS label. Otherwise we will not make the request.
289239
putPublicAccessBlockRequest.SetAccountId("invalid.account.id");
290240

291241
putPublicAccessBlockOutcome = m_client.PutPublicAccessBlock(putPublicAccessBlockRequest);
@@ -307,6 +257,13 @@ namespace
307257
auto headBucketOutcome = m_s3Client.HeadBucket(headBucketRequest);
308258
ASSERT_TRUE(headBucketOutcome.IsSuccess());
309259

260+
GetAccessPointRequest getAccessPointRequest;
261+
getAccessPointRequest.SetAccountId(m_accountId);
262+
getAccessPointRequest.SetName(accessPoint);
263+
auto getAccessPointOutcome = m_client.GetAccessPoint(getAccessPointRequest);
264+
ASSERT_TRUE(getAccessPointOutcome.IsSuccess());
265+
ASSERT_EQ(accessPoint, getAccessPointOutcome.GetResult().GetName());
266+
310267
// Invalid service name
311268
ss.str("");
312269
ss << "arn:aws:sqs:" << Aws::Region::US_WEST_2 << ":" << m_accountId << ":accesspoint:" << accessPoint;
@@ -392,10 +349,15 @@ namespace
392349
config.region = Aws::Region::US_WEST_2;
393350
config.useDualStack = true;
394351
S3::S3Client s3ClientInUsWest2UsingDualStack(config);
352+
S3ControlClient clientInUsWest2UsingDualStack(config);
395353
headBucketRequest.SetBucket(accessPointArn);
396354
headBucketOutcome = s3ClientInUsWest2UsingDualStack.HeadBucket(headBucketRequest);
397355
ASSERT_TRUE(headBucketOutcome.IsSuccess());
398356

357+
getAccessPointOutcome = clientInUsWest2UsingDualStack.GetAccessPoint(getAccessPointRequest);
358+
ASSERT_TRUE(getAccessPointOutcome.IsSuccess());
359+
ASSERT_EQ(accessPoint, getAccessPointOutcome.GetResult().GetName());
360+
399361
config.region = Aws::Region::US_EAST_1;
400362
config.useDualStack = false;
401363
S3::S3Client s3ClientInUsEast1(config);

0 commit comments

Comments
 (0)