@@ -42,14 +42,14 @@ import (
4242type AddBucketOps struct {
4343 Name string
4444 Locking bool
45- Versioning bool
45+ Versioning map [ string ] interface {}
4646 Quota map [string ]interface {}
4747 Retention map [string ]interface {}
4848 Endpoint * string
4949 UseToken * string
5050}
5151
52- func AddBucket (name string , locking , versioning bool , quota , retention map [string ]interface {}) (* http.Response , error ) {
52+ func AddBucket (name string , locking bool , versioning , quota , retention map [string ]interface {}) (* http.Response , error ) {
5353 return AddBucketWithOpts (& AddBucketOps {
5454 Name : name ,
5555 Locking : locking ,
@@ -142,11 +142,11 @@ func getTokenForEndpoint(endpoint string) string {
142142 return loginToken
143143}
144144
145- func setupBucket (name string , locking , versioning bool , quota , retention map [string ]interface {}, assert * assert.Assertions , expected int ) bool {
145+ func setupBucket (name string , locking bool , versioning , quota , retention map [string ]interface {}, assert * assert.Assertions , expected int ) bool {
146146 return setupBucketForEndpoint (name , locking , versioning , quota , retention , assert , expected , nil , nil )
147147}
148148
149- func setupBucketForEndpoint (name string , locking , versioning bool , quota , retention map [string ]interface {}, assert * assert.Assertions , expected int , endpoint , endpointToken * string ) bool {
149+ func setupBucketForEndpoint (name string , locking bool , versioning , quota , retention map [string ]interface {}, assert * assert.Assertions , expected int , endpoint , endpointToken * string ) bool {
150150 /*
151151 The intention of this function is to return either true or false to
152152 reduce the code by performing the verification in one place only.
@@ -751,7 +751,7 @@ func TestPutObjectsLegalholdStatus(t *testing.T) {
751751 status := "enabled"
752752
753753 // 1. Create bucket
754- if ! setupBucket (bucketName , true , true , nil , nil , assert , 200 ) {
754+ if ! setupBucket (bucketName , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
755755 return
756756 }
757757
@@ -838,7 +838,7 @@ func TestGetBucketQuota(t *testing.T) {
838838 validBucket := "testgetbucketquota"
839839
840840 // 1. Create bucket
841- if ! setupBucket (validBucket , true , true , nil , nil , assert , 200 ) {
841+ if ! setupBucket (validBucket , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
842842 return
843843 }
844844
@@ -915,7 +915,7 @@ func TestPutBucketQuota(t *testing.T) {
915915 validBucket := "testputbucketquota"
916916
917917 // 1. Create bucket
918- if ! setupBucket (validBucket , true , true , nil , nil , assert , 200 ) {
918+ if ! setupBucket (validBucket , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
919919 return
920920 }
921921
@@ -974,7 +974,7 @@ func TestListBucketEvents(t *testing.T) {
974974 validBucket := "testlistbucketevents"
975975
976976 // 1. Create bucket
977- if ! setupBucket (validBucket , true , true , nil , nil , assert , 200 ) {
977+ if ! setupBucket (validBucket , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
978978 return
979979 }
980980
@@ -1032,7 +1032,7 @@ func TestDeleteObjectsRetentionStatus(t *testing.T) {
10321032 validPrefix := encodeBase64 (fileName )
10331033
10341034 // 1. Create bucket
1035- if ! setupBucket (bucketName , true , true , nil , nil , assert , 200 ) {
1035+ if ! setupBucket (bucketName , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
10361036 return
10371037 }
10381038
@@ -1139,7 +1139,7 @@ func TestBucketSetPolicy(t *testing.T) {
11391139 validBucketName := "testbucketsetpolicy"
11401140
11411141 // 1. Create bucket
1142- if ! setupBucket (validBucketName , true , true , nil , nil , assert , 200 ) {
1142+ if ! setupBucket (validBucketName , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
11431143 return
11441144 }
11451145
@@ -1200,7 +1200,7 @@ func TestRestoreObjectToASelectedVersion(t *testing.T) {
12001200 validPrefix := encodeBase64 (fileName )
12011201
12021202 // 1. Create bucket
1203- if ! setupBucket (bucketName , true , true , nil , nil , assert , 200 ) {
1203+ if ! setupBucket (bucketName , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
12041204 return
12051205 }
12061206
@@ -1288,7 +1288,7 @@ func TestPutBucketsTags(t *testing.T) {
12881288 // 1. Create the bucket
12891289 assert := assert .New (t )
12901290 validBucketName := "testputbuckettags1"
1291- if ! setupBucket (validBucketName , false , false , nil , nil , assert , 200 ) {
1291+ if ! setupBucket (validBucketName , false , nil , nil , nil , assert , 200 ) {
12921292 return
12931293 }
12941294
@@ -1346,7 +1346,7 @@ func TestGetsTheMetadataOfAnObject(t *testing.T) {
13461346 tags ["tag" ] = "testputobjecttagbucketonetagone"
13471347
13481348 // 1. Create the bucket
1349- if ! setupBucket (bucketName , false , false , nil , nil , assert , 200 ) {
1349+ if ! setupBucket (bucketName , false , nil , nil , nil , assert , 200 ) {
13501350 return
13511351 }
13521352
@@ -1417,7 +1417,7 @@ func TestPutObjectsRetentionStatus(t *testing.T) {
14171417 prefix := encodeBase64 (fileName )
14181418
14191419 // 1. Create bucket
1420- if ! setupBucket (bucketName , true , true , nil , nil , assert , 200 ) {
1420+ if ! setupBucket (bucketName , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
14211421 return
14221422 }
14231423
@@ -1515,7 +1515,7 @@ func TestShareObjectOnURL(t *testing.T) {
15151515 versionID := "null"
15161516
15171517 // 1. Create the bucket
1518- if ! setupBucket (bucketName , false , false , nil , nil , assert , 200 ) {
1518+ if ! setupBucket (bucketName , false , nil , nil , nil , assert , 200 ) {
15191519 return
15201520 }
15211521
@@ -1589,7 +1589,7 @@ func TestListObjects(t *testing.T) {
15891589 fileName := "testlistobjecttobucket1.txt"
15901590
15911591 // 1. Create the bucket
1592- if ! setupBucket (bucketName , false , false , nil , nil , assert , 200 ) {
1592+ if ! setupBucket (bucketName , false , nil , nil , nil , assert , 200 ) {
15931593 return
15941594 }
15951595
@@ -1637,7 +1637,7 @@ func TestDeleteObject(t *testing.T) {
16371637 numberOfFiles := 2
16381638
16391639 // 1. Create bucket
1640- if ! setupBucket (bucketName , true , true , nil , nil , assert , 200 ) {
1640+ if ! setupBucket (bucketName , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
16411641 return
16421642 }
16431643
@@ -1703,7 +1703,7 @@ func TestUploadObjectToBucket(t *testing.T) {
17031703 fileName := "sample.txt"
17041704
17051705 // 1. Create the bucket
1706- if ! setupBucket (bucketName , false , false , nil , nil , assert , 200 ) {
1706+ if ! setupBucket (bucketName , false , nil , nil , nil , assert , 200 ) {
17071707 return
17081708 }
17091709
@@ -1738,7 +1738,7 @@ func TestDownloadObject(t *testing.T) {
17381738 }
17391739
17401740 // 1. Create the bucket
1741- if ! setupBucket (bucketName , true , true , nil , nil , assert , 200 ) {
1741+ if ! setupBucket (bucketName , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
17421742 return
17431743 }
17441744
@@ -1800,7 +1800,7 @@ func TestDeleteMultipleObjects(t *testing.T) {
18001800 fileName := "testdeletemultipleobjs"
18011801
18021802 // 1. Create a bucket for this particular test
1803- if ! setupBucket (bucketName , false , false , nil , nil , assert , 200 ) {
1803+ if ! setupBucket (bucketName , false , nil , nil , nil , assert , 200 ) {
18041804 return
18051805 }
18061806
@@ -1877,7 +1877,7 @@ func TestPutObjectTag(t *testing.T) {
18771877 versionID := "null"
18781878
18791879 // 1. Create the bucket
1880- if ! setupBucket (bucketName , false , false , nil , nil , assert , 200 ) {
1880+ if ! setupBucket (bucketName , false , nil , nil , nil , assert , 200 ) {
18811881 return
18821882 }
18831883
@@ -1951,7 +1951,7 @@ func TestBucketRetention(t *testing.T) {
19511951 retention ["mode" ] = "compliance"
19521952 retention ["unit" ] = "years"
19531953 retention ["validity" ] = 2
1954- if ! setupBucket ("setbucketretention1" , true , true , nil , retention , assert , 200 ) {
1954+ if ! setupBucket ("setbucketretention1" , true , map [ string ] interface {}{ "enabled" : true } , nil , retention , assert , 200 ) {
19551955 return
19561956 }
19571957
@@ -2002,7 +2002,7 @@ func TestBucketInformationGenericErrorResponse(t *testing.T) {
20022002
20032003 // 1. Create the bucket
20042004 assert := assert .New (t )
2005- if ! setupBucket ("bucketinformation2" , false , false , nil , nil , assert , 200 ) {
2005+ if ! setupBucket ("bucketinformation2" , false , nil , nil , nil , assert , 200 ) {
20062006 return
20072007 }
20082008
@@ -2047,7 +2047,7 @@ func TestBucketInformationSuccessfulResponse(t *testing.T) {
20472047
20482048 // 1. Create the bucket
20492049 assert := assert .New (t )
2050- if ! setupBucket ("bucketinformation1" , false , false , nil , nil , assert , 200 ) {
2050+ if ! setupBucket ("bucketinformation1" , false , nil , nil , nil , assert , 200 ) {
20512051 return
20522052 }
20532053
@@ -2160,7 +2160,7 @@ func TestListBuckets(t *testing.T) {
21602160 // 1. Create buckets
21612161 numberOfBuckets := 3
21622162 for i := 1 ; i <= numberOfBuckets ; i ++ {
2163- if ! setupBucket ("testlistbuckets" + strconv .Itoa (i ), false , false , nil , nil , assert , 200 ) {
2163+ if ! setupBucket ("testlistbuckets" + strconv .Itoa (i ), false , nil , nil , nil , assert , 200 ) {
21642164 return
21652165 }
21662166 }
@@ -2267,7 +2267,7 @@ func TestBucketVersioning(t *testing.T) {
22672267
22682268 requestDataBody := bytes .NewReader (requestDataJSON )
22692269
2270- if ! setupBucket ("test2" , true , false , nil , nil , assert , 200 ) {
2270+ if ! setupBucket ("test2" , true , nil , nil , nil , assert , 200 ) {
22712271 return
22722272 }
22732273
@@ -2335,7 +2335,7 @@ func TestSetBucketTags(t *testing.T) {
23352335 }
23362336
23372337 // put bucket
2338- if ! setupBucket ("test4" , false , false , nil , nil , assert , 200 ) {
2338+ if ! setupBucket ("test4" , false , nil , nil , nil , assert , 200 ) {
23392339 return
23402340 }
23412341
@@ -2402,7 +2402,7 @@ func TestGetBucket(t *testing.T) {
24022402 Timeout : 2 * time .Second ,
24032403 }
24042404
2405- if ! setupBucket ("test3" , false , false , nil , nil , assert , 200 ) {
2405+ if ! setupBucket ("test3" , false , nil , nil , nil , assert , 200 ) {
24062406 return
24072407 }
24082408
@@ -2455,7 +2455,7 @@ func TestAddBucket(t *testing.T) {
24552455 }
24562456 for _ , tt := range tests {
24572457 t .Run (tt .name , func (t * testing.T ) {
2458- if ! setupBucket (tt .args .bucketName , false , false , nil , nil , assert , tt .expectedStatus ) {
2458+ if ! setupBucket (tt .args .bucketName , false , nil , nil , nil , assert , tt .expectedStatus ) {
24592459 return
24602460 }
24612461 })
@@ -3000,7 +3000,7 @@ func TestReturnsTheStatusOfObjectLockingSupportOnTheBucket(t *testing.T) {
30003000 )
30013001}
30023002
3003- func SetBucketVersioning (bucketName string , versioning bool , endpoint , useToken * string ) (* http.Response , error ) {
3003+ func SetBucketVersioning (bucketName string , versioning map [ string ] interface {} , endpoint , useToken * string ) (* http.Response , error ) {
30043004 /*
30053005 Helper function to set Bucket Versioning
30063006 */
@@ -3037,15 +3037,15 @@ func TestSetBucketVersioning(t *testing.T) {
30373037 assert := assert .New (t )
30383038 bucket := "test-set-bucket-versioning"
30393039 locking := false
3040- versioning := true
3040+ versioning := map [ string ] interface {}{ "enabled" : true }
30413041
30423042 // 1. Create bucket with versioning as true and locking as false
30433043 if ! setupBucket (bucket , locking , versioning , nil , nil , assert , 200 ) {
30443044 return
30453045 }
30463046
30473047 // 2. Set versioning as False i.e Suspend versioning
3048- response , err := SetBucketVersioning (bucket , false , nil , nil )
3048+ response , err := SetBucketVersioning (bucket , map [ string ] interface {}{ "enabled" : false } , nil , nil )
30493049 assert .Nil (err )
30503050 if err != nil {
30513051 log .Println (err )
@@ -3118,12 +3118,11 @@ func TestEnableBucketEncryption(t *testing.T) {
31183118 assert := assert .New (t )
31193119 bucketName := "test-enable-bucket-encryption"
31203120 locking := false
3121- versioning := false
31223121 encType := "sse-s3"
31233122 kmsKeyID := ""
31243123
31253124 // 1. Add bucket
3126- if ! setupBucket (bucketName , locking , versioning , nil , nil , assert , 200 ) {
3125+ if ! setupBucket (bucketName , locking , nil , nil , nil , assert , 200 ) {
31273126 return
31283127 }
31293128
@@ -3381,7 +3380,6 @@ func TestBucketLifeCycle(t *testing.T) {
33813380 assert := assert .New (t )
33823381 bucketName := "test-bucket-life-cycle"
33833382 locking := false
3384- versioning := false
33853383 ltype := "expiry"
33863384 prefix := ""
33873385 tags := ""
@@ -3392,7 +3390,7 @@ func TestBucketLifeCycle(t *testing.T) {
33923390 var noncurrentversionExpirationDays int64
33933391
33943392 // 1. Add bucket
3395- if ! setupBucket (bucketName , locking , versioning , nil , nil , assert , 200 ) {
3393+ if ! setupBucket (bucketName , locking , nil , nil , nil , assert , 200 ) {
33963394 return
33973395 }
33983396
@@ -3597,12 +3595,11 @@ func TestAccessRule(t *testing.T) {
35973595 assert := assert .New (t )
35983596 bucketName := "test-access-rule-bucket"
35993597 locking := false
3600- versioning := false
36013598 prefix := "prefix"
36023599 access := "readonly"
36033600
36043601 // 1. Add bucket
3605- if ! setupBucket (bucketName , locking , versioning , nil , nil , assert , 200 ) {
3602+ if ! setupBucket (bucketName , locking , nil , nil , nil , assert , 200 ) {
36063603 return
36073604 }
36083605
@@ -3846,16 +3843,16 @@ func TestAddRemoteBucket(t *testing.T) {
38463843 fmt .Println ("targetBucket: " , targetBucket )
38473844
38483845 // 1. Create bucket
3849- if ! setupBucket ("source" , true , true , nil , nil , assert , 200 ) {
3846+ if ! setupBucket ("source" , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
38503847 return
38513848 }
38523849 // 1.1. Create target bucket
38533850 targetEndpoint := "http://localhost:9092"
38543851 targetToken := getTokenForEndpoint (targetEndpoint )
3855- if ! setupBucketForEndpoint (targetBucket , true , true , nil , nil , assert , 200 , & targetEndpoint , & targetToken ) {
3852+ if ! setupBucketForEndpoint (targetBucket , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 , & targetEndpoint , & targetToken ) {
38563853 log .Println ("bucket already exists" )
38573854 }
3858- _ , err := SetBucketVersioning (targetBucket , false , & targetURL , & targetToken )
3855+ _ , err := SetBucketVersioning (targetBucket , map [ string ] interface {}{ "enabled" : false } , & targetURL , & targetToken )
38593856 if err != nil {
38603857 log .Println ("bucket already has versioning" )
38613858 }
@@ -3905,16 +3902,16 @@ func TestDeleteRemoteBucket(t *testing.T) {
39053902 fmt .Println ("targetBucket: " , targetBucket )
39063903
39073904 // 1. Create bucket
3908- if ! setupBucket ("deletesource" , true , true , nil , nil , assert , 200 ) {
3905+ if ! setupBucket ("deletesource" , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 ) {
39093906 return
39103907 }
39113908 // 1.1. Create target bucket
39123909 targetEndpoint := "http://localhost:9092"
39133910 targetToken := getTokenForEndpoint (targetEndpoint )
3914- if ! setupBucketForEndpoint (targetBucket , true , true , nil , nil , assert , 200 , & targetEndpoint , & targetToken ) {
3911+ if ! setupBucketForEndpoint (targetBucket , true , map [ string ] interface {}{ "enabled" : true } , nil , nil , assert , 200 , & targetEndpoint , & targetToken ) {
39153912 log .Println ("bucket already exists" )
39163913 }
3917- _ , err := SetBucketVersioning (targetBucket , false , & targetURL , & targetToken )
3914+ _ , err := SetBucketVersioning (targetBucket , map [ string ] interface {}{ "enabled" : false } , & targetURL , & targetToken )
39183915 if err != nil {
39193916 log .Println ("bucket already has versioning" )
39203917 }
0 commit comments