MCPcopy
hub / github.com/minio/minio-go / testGetObjectWithVersioning

Function testGetObjectWithVersioning

functional_tests.go:901–1024  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

899}
900
901func testGetObjectWithVersioning() {
902 // initialize logging params
903 startTime := time.Now()
904 testName := getFuncName()
905 function := "GetObject()"
906 args := map[string]interface{}{}
907
908 c, err := NewClient(ClientConfig{})
909 if err != nil {
910 logError(testName, function, args, startTime, "", "MinIO client object creation failed", err)
911 return
912 }
913
914 // Generate a new random bucket name.
915 bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-")
916 args["bucketName"] = bucketName
917
918 // Make a new bucket.
919 err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1", ObjectLocking: true})
920 if err != nil {
921 logError(testName, function, args, startTime, "", "Make bucket failed", err)
922 return
923 }
924
925 err = c.EnableVersioning(context.Background(), bucketName)
926 if err != nil {
927 logError(testName, function, args, startTime, "", "Enable versioning failed", err)
928 return
929 }
930
931 // Save the data
932 objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "")
933 args["objectName"] = objectName
934
935 // Save the contents of datafiles to check with GetObject() reader output later
936 var buffers [][]byte
937 testFiles := []string{"datafile-1-b", "datafile-10-kB"}
938
939 for _, testFile := range testFiles {
940 r := getDataReader(testFile)
941 buf, err := io.ReadAll(r)
942 if err != nil {
943 logError(testName, function, args, startTime, "", "unexpected failure", err)
944 return
945 }
946 r.Close()
947 _, err = c.PutObject(context.Background(), bucketName, objectName, bytes.NewReader(buf), int64(len(buf)), minio.PutObjectOptions{})
948 if err != nil {
949 logError(testName, function, args, startTime, "", "PutObject failed", err)
950 return
951 }
952 buffers = append(buffers, buf)
953 }
954
955 objectsInfo := c.ListObjects(context.Background(), bucketName, minio.ListObjectsOptions{WithVersions: true, Recursive: true})
956
957 var results []minio.ObjectInfo
958 for info := range objectsInfo {

Callers 1

mainFunction · 0.85

Calls 15

MakeBucketMethod · 0.95
EnableVersioningMethod · 0.95
PutObjectMethod · 0.95
ListObjectsMethod · 0.95
GetObjectMethod · 0.95
getFuncNameFunction · 0.85
NewClientFunction · 0.85
logErrorFunction · 0.85
getDataReaderFunction · 0.85
cleanupVersionedBucketFunction · 0.85
logSuccessFunction · 0.85
StatMethod · 0.80

Tested by

no test coverage detected