Tests SSE-C get object ReaderAt interface methods.
()
| 6685 | |
| 6686 | // Tests SSE-C get object ReaderAt interface methods. |
| 6687 | func testSSECEncryptedGetObjectReadAtFunctional() { |
| 6688 | // initialize logging params |
| 6689 | startTime := time.Now() |
| 6690 | testName := getFuncName() |
| 6691 | function := "GetObject(bucketName, objectName)" |
| 6692 | args := map[string]interface{}{} |
| 6693 | |
| 6694 | c, err := NewClient(ClientConfig{}) |
| 6695 | if err != nil { |
| 6696 | logError(testName, function, args, startTime, "", "MinIO client object creation failed", err) |
| 6697 | return |
| 6698 | } |
| 6699 | |
| 6700 | // Generate a new random bucket name. |
| 6701 | bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-") |
| 6702 | args["bucketName"] = bucketName |
| 6703 | |
| 6704 | // Make a new bucket. |
| 6705 | err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"}) |
| 6706 | if err != nil { |
| 6707 | logError(testName, function, args, startTime, "", "MakeBucket failed", err) |
| 6708 | return |
| 6709 | } |
| 6710 | |
| 6711 | defer cleanupBucket(bucketName, c) |
| 6712 | |
| 6713 | // Generate 129MiB of data. |
| 6714 | bufSize := dataFileMap["datafile-129-MB"] |
| 6715 | reader := getDataReader("datafile-129-MB") |
| 6716 | defer reader.Close() |
| 6717 | |
| 6718 | objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "") |
| 6719 | args["objectName"] = objectName |
| 6720 | |
| 6721 | buf, err := io.ReadAll(reader) |
| 6722 | if err != nil { |
| 6723 | logError(testName, function, args, startTime, "", "ReadAll failed", err) |
| 6724 | return |
| 6725 | } |
| 6726 | |
| 6727 | // Save the data |
| 6728 | _, err = c.PutObject(context.Background(), bucketName, objectName, bytes.NewReader(buf), int64(len(buf)), minio.PutObjectOptions{ |
| 6729 | ContentType: "binary/octet-stream", |
| 6730 | ServerSideEncryption: encrypt.DefaultPBKDF([]byte("correct horse battery staple"), []byte(bucketName+objectName)), |
| 6731 | }) |
| 6732 | if err != nil { |
| 6733 | logError(testName, function, args, startTime, "", "PutObject failed", err) |
| 6734 | return |
| 6735 | } |
| 6736 | |
| 6737 | // read the data back |
| 6738 | r, err := c.GetObject(context.Background(), bucketName, objectName, minio.GetObjectOptions{ |
| 6739 | ServerSideEncryption: encrypt.DefaultPBKDF([]byte("correct horse battery staple"), []byte(bucketName+objectName)), |
| 6740 | }) |
| 6741 | if err != nil { |
| 6742 | logError(testName, function, args, startTime, "", "PutObject failed", err) |
| 6743 | return |
| 6744 | } |
no test coverage detected