Skip to content

Commit bff35bb

Browse files
authored
Adding object-locking test (#1674)
1 parent b481b35 commit bff35bb

File tree

1 file changed

+51
-1
lines changed

1 file changed

+51
-1
lines changed

integration/user_api_bucket_test.go

Lines changed: 51 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2998,9 +2998,24 @@ func GetBucketVersioning(bucketName string) (*http.Response, error) {
29982998
/*
29992999
Helper function to get bucket's versioning
30003000
*/
3001+
endPoint := "versioning"
3002+
return BaseGetFunction(bucketName, endPoint)
3003+
}
3004+
3005+
func ReturnsTheStatusOfObjectLockingSupportOnTheBucket(bucketName string) (*http.Response, error) {
3006+
/*
3007+
Helper function to test end point below:
3008+
URL: /buckets/{bucket_name}/object-locking:
3009+
HTTP Verb: GET
3010+
*/
3011+
endPoint := "object-locking"
3012+
return BaseGetFunction(bucketName, endPoint)
3013+
}
3014+
3015+
func BaseGetFunction(bucketName string, endPoint string) (*http.Response, error) {
30013016
request, err := http.NewRequest(
30023017
"GET",
3003-
"http://localhost:9090/api/v1/buckets/"+bucketName+"/versioning", nil)
3018+
"http://localhost:9090/api/v1/buckets/"+bucketName+"/"+endPoint, nil)
30043019
if err != nil {
30053020
log.Println(err)
30063021
}
@@ -3013,6 +3028,41 @@ func GetBucketVersioning(bucketName string) (*http.Response, error) {
30133028
return response, err
30143029
}
30153030

3031+
func TestReturnsTheStatusOfObjectLockingSupportOnTheBucket(t *testing.T) {
3032+
// Test for end point: /buckets/{bucket_name}/object-locking
3033+
3034+
// Vars
3035+
assert := assert.New(t)
3036+
bucketName := "testputobjectslegalholdstatus"
3037+
3038+
// 1. Get the status
3039+
response, err := ReturnsTheStatusOfObjectLockingSupportOnTheBucket(
3040+
bucketName,
3041+
)
3042+
assert.Nil(err)
3043+
if err != nil {
3044+
log.Println(err)
3045+
return
3046+
}
3047+
if response != nil {
3048+
assert.Equal(200, response.StatusCode, "error invalid status")
3049+
}
3050+
3051+
// 2. Verify the status to be enabled for this bucket
3052+
bodyBytes, _ := ioutil.ReadAll(response.Body)
3053+
structBucketLocking := models.BucketObLockingResponse{}
3054+
err = json.Unmarshal(bodyBytes, &structBucketLocking)
3055+
if err != nil {
3056+
log.Println(err)
3057+
assert.Nil(err)
3058+
}
3059+
assert.Equal(
3060+
structBucketLocking.ObjectLockingEnabled,
3061+
true,
3062+
structBucketLocking,
3063+
)
3064+
}
3065+
30163066
func SetBucketVersioning(bucketName string, versioning bool) (*http.Response, error) {
30173067
/*
30183068
Helper function to set Bucket Versioning

0 commit comments

Comments
 (0)