mirror of
https://github.com/versity/versitygw.git
synced 2026-09-20 15:04:27 +00:00
feat: adds Location, x-amz-bucket-arn response headers in CreateBucket
Closes #1873
This commit is contained in:
@@ -641,3 +641,28 @@ func CreateBucket_invalid_canned_acl(s *S3Conf) error {
|
||||
return checkSdkApiErr(err, "InvalidArgument")
|
||||
})
|
||||
}
|
||||
|
||||
func CreateBucket_success(s *S3Conf) error {
|
||||
testName := "CreateBucket_success"
|
||||
return actionHandlerNoSetup(s, testName, func(s3client *s3.Client, bucket string) error {
|
||||
ctx, cancel := context.WithTimeout(context.Background(), shortTimeout)
|
||||
res, err := s3client.CreateBucket(ctx, &s3.CreateBucketInput{
|
||||
Bucket: &bucket,
|
||||
})
|
||||
cancel()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
expectedLocation := "/" + bucket
|
||||
if getString(res.Location) != expectedLocation {
|
||||
return fmt.Errorf("expected the bucket Location to be %s, instead got %s", expectedLocation, getString(res.Location))
|
||||
}
|
||||
expectedArn := "arn:aws:s3:::" + bucket
|
||||
if getString(res.BucketArn) != expectedArn {
|
||||
return fmt.Errorf("expected the bucket arn to be %s, instead got %s", expectedArn, getString(res.BucketArn))
|
||||
}
|
||||
|
||||
return teardown(s, bucket)
|
||||
})
|
||||
}
|
||||
|
||||
@@ -24,28 +24,6 @@ import (
|
||||
"github.com/versity/versitygw/s3err"
|
||||
)
|
||||
|
||||
func CreateDeleteBucket_success(s *S3Conf) error {
|
||||
testName := "CreateBucket_success"
|
||||
runF(testName)
|
||||
bucket := getBucketName()
|
||||
|
||||
err := setup(s, bucket)
|
||||
if err != nil {
|
||||
failF("%v: %v", testName, err)
|
||||
return fmt.Errorf("%v: %w", testName, err)
|
||||
|
||||
}
|
||||
|
||||
err = teardown(s, bucket)
|
||||
if err != nil {
|
||||
failF("%v: %v", testName, err)
|
||||
return fmt.Errorf("%v: %w", testName, err)
|
||||
}
|
||||
|
||||
passF(testName)
|
||||
return nil
|
||||
}
|
||||
|
||||
func DeleteBucket_non_existing_bucket(s *S3Conf) error {
|
||||
testName := "DeleteBucket_non_existing_bucket"
|
||||
runF(testName)
|
||||
|
||||
@@ -81,7 +81,7 @@ func TestCreateBucket(ts *TestState) {
|
||||
ts.Run(CreateBucket_non_default_acl)
|
||||
ts.Run(CreateBucket_private_canned_acl)
|
||||
ts.Run(CreateBucket_private_canned_acl_bucket_owner_enforced_ownership)
|
||||
ts.Run(CreateDeleteBucket_success)
|
||||
ts.Run(CreateBucket_success)
|
||||
ts.Run(CreateBucket_default_object_lock)
|
||||
ts.Run(CreateBucket_invalid_location_constraint)
|
||||
ts.Run(CreateBucket_long_tags)
|
||||
@@ -1246,7 +1246,7 @@ func GetIntTests() IntTests {
|
||||
"CreateBucket_invalid_ownership": CreateBucket_invalid_ownership,
|
||||
"CreateBucket_ownership_with_acl": CreateBucket_ownership_with_acl,
|
||||
"CreateBucket_as_user": CreateBucket_as_user,
|
||||
"CreateDeleteBucket_success": CreateDeleteBucket_success,
|
||||
"CreateBucket_success": CreateBucket_success,
|
||||
"CreateBucket_default_acl": CreateBucket_default_acl,
|
||||
"CreateBucket_non_default_acl": CreateBucket_non_default_acl,
|
||||
"CreateBucket_private_canned_acl": CreateBucket_private_canned_acl,
|
||||
|
||||
Reference in New Issue
Block a user