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

Function testSSES3EncryptedGetObjectReadSeekFunctional

functional_tests.go:6521–6684  ·  view source on GitHub ↗

Tests SSE-S3 get object ReaderSeeker interface methods.

()

Source from the content-addressed store, hash-verified

6519
6520// Tests SSE-S3 get object ReaderSeeker interface methods.
6521func testSSES3EncryptedGetObjectReadSeekFunctional() {
6522 // initialize logging params
6523 startTime := time.Now()
6524 testName := getFuncName()
6525 function := "GetObject(bucketName, objectName)"
6526 args := map[string]interface{}{}
6527
6528 c, err := NewClient(ClientConfig{})
6529 if err != nil {
6530 logError(testName, function, args, startTime, "", "MinIO client object creation failed", err)
6531 return
6532 }
6533
6534 // Generate a new random bucket name.
6535 bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-")
6536 args["bucketName"] = bucketName
6537
6538 // Make a new bucket.
6539 err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"})
6540 if err != nil {
6541 logError(testName, function, args, startTime, "", "MakeBucket failed", err)
6542 return
6543 }
6544
6545 defer func() {
6546 // Delete all objects and buckets
6547 if err = cleanupBucket(bucketName, c); err != nil {
6548 logError(testName, function, args, startTime, "", "CleanupBucket failed", err)
6549 return
6550 }
6551 }()
6552
6553 // Generate 129MiB of data.
6554 bufSize := dataFileMap["datafile-129-MB"]
6555 reader := getDataReader("datafile-129-MB")
6556 defer reader.Close()
6557
6558 objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "")
6559 args["objectName"] = objectName
6560
6561 buf, err := io.ReadAll(reader)
6562 if err != nil {
6563 logError(testName, function, args, startTime, "", "ReadAll failed", err)
6564 return
6565 }
6566
6567 // Save the data
6568 _, err = c.PutObject(context.Background(), bucketName, objectName, bytes.NewReader(buf), int64(len(buf)), minio.PutObjectOptions{
6569 ContentType: "binary/octet-stream",
6570 ServerSideEncryption: encrypt.NewSSE(),
6571 })
6572 if err != nil {
6573 logError(testName, function, args, startTime, "", "PutObject failed", err)
6574 return
6575 }
6576
6577 // Read the data back
6578 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