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

Function testSSES3EncryptedGetObjectReadSeekFunctional

functional_tests.go:6625–6788  ·  view source on GitHub ↗

Tests SSE-S3 get object ReaderSeeker interface methods.

()

Source from the content-addressed store, hash-verified

6623
6624// Tests SSE-S3 get object ReaderSeeker interface methods.
6625func testSSES3EncryptedGetObjectReadSeekFunctional() {
6626 // initialize logging params
6627 startTime := time.Now()
6628 testName := getFuncName()
6629 function := "GetObject(bucketName, objectName)"
6630 args := map[string]interface{}{}
6631
6632 c, err := NewClient(ClientConfig{})
6633 if err != nil {
6634 logError(testName, function, args, startTime, "", "MinIO client object creation failed", err)
6635 return
6636 }
6637
6638 // Generate a new random bucket name.
6639 bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-")
6640 args["bucketName"] = bucketName
6641
6642 // Make a new bucket.
6643 err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"})
6644 if err != nil {
6645 logError(testName, function, args, startTime, "", "MakeBucket failed", err)
6646 return
6647 }
6648
6649 defer func() {
6650 // Delete all objects and buckets
6651 if err = cleanupBucket(bucketName, c); err != nil {
6652 logError(testName, function, args, startTime, "", "CleanupBucket failed", err)
6653 return
6654 }
6655 }()
6656
6657 // Generate 129MiB of data.
6658 bufSize := dataFileMap["datafile-129-MB"]
6659 reader := getDataReader("datafile-129-MB")
6660 defer reader.Close()
6661
6662 objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "")
6663 args["objectName"] = objectName
6664
6665 buf, err := io.ReadAll(reader)
6666 if err != nil {
6667 logError(testName, function, args, startTime, "", "ReadAll failed", err)
6668 return
6669 }
6670
6671 // Save the data
6672 _, err = c.PutObject(context.Background(), bucketName, objectName, bytes.NewReader(buf), int64(len(buf)), minio.PutObjectOptions{
6673 ContentType: "binary/octet-stream",
6674 ServerSideEncryption: encrypt.NewSSE(),
6675 })
6676 if err != nil {
6677 logError(testName, function, args, startTime, "", "PutObject failed", err)
6678 return
6679 }
6680
6681 // Read the data back
6682 r, err := c.GetObject(context.Background(), bucketName, objectName, minio.GetObjectOptions{})

Callers 1

mainFunction · 0.85

Calls 15

MakeBucketMethod · 0.95
PutObjectMethod · 0.95
GetObjectMethod · 0.95
NewSSEFunction · 0.92
getFuncNameFunction · 0.85
NewClientFunction · 0.85
logErrorFunction · 0.85
cleanupBucketFunction · 0.85
getDataReaderFunction · 0.85
logSuccessFunction · 0.85
StatMethod · 0.80
EqualMethod · 0.80

Tested by

no test coverage detected