Tests SSE-C get object ReaderAt interface methods.
()
| 6789 | |
| 6790 | // Tests SSE-C get object ReaderAt interface methods. |
| 6791 | func testSSECEncryptedGetObjectReadAtFunctional() { |
| 6792 | // initialize logging params |
| 6793 | startTime := time.Now() |
| 6794 | testName := getFuncName() |
| 6795 | function := "GetObject(bucketName, objectName)" |
| 6796 | args := map[string]interface{}{} |
| 6797 | |
| 6798 | c, err := NewClient(ClientConfig{}) |
| 6799 | if err != nil { |
| 6800 | logError(testName, function, args, startTime, "", "MinIO client object creation failed", err) |
| 6801 | return |
| 6802 | } |
| 6803 | |
| 6804 | // Generate a new random bucket name. |
| 6805 | bucketName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-") |
| 6806 | args["bucketName"] = bucketName |
| 6807 | |
| 6808 | // Make a new bucket. |
| 6809 | err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"}) |
| 6810 | if err != nil { |
| 6811 | logError(testName, function, args, startTime, "", "MakeBucket failed", err) |
| 6812 | return |
| 6813 | } |
| 6814 | |
| 6815 | defer cleanupBucket(bucketName, c) |
| 6816 | |
| 6817 | // Generate 129MiB of data. |
| 6818 | bufSize := dataFileMap["datafile-129-MB"] |
| 6819 | reader := getDataReader("datafile-129-MB") |
| 6820 | defer reader.Close() |
| 6821 | |
| 6822 | objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "") |
| 6823 | args["objectName"] = objectName |
| 6824 | |
| 6825 | buf, err := io.ReadAll(reader) |
| 6826 | if err != nil { |
| 6827 | logError(testName, function, args, startTime, "", "ReadAll failed", err) |
| 6828 | return |
| 6829 | } |
| 6830 | |
| 6831 | // Save the data |
| 6832 | _, err = c.PutObject(context.Background(), bucketName, objectName, bytes.NewReader(buf), int64(len(buf)), minio.PutObjectOptions{ |
| 6833 | ContentType: "binary/octet-stream", |
| 6834 | ServerSideEncryption: encrypt.DefaultPBKDF([]byte("correct horse battery staple"), []byte(bucketName+objectName)), |
| 6835 | }) |
| 6836 | if err != nil { |
| 6837 | logError(testName, function, args, startTime, "", "PutObject failed", err) |
| 6838 | return |
| 6839 | } |
| 6840 | |
| 6841 | // read the data back |
| 6842 | r, err := c.GetObject(context.Background(), bucketName, objectName, minio.GetObjectOptions{ |
| 6843 | ServerSideEncryption: encrypt.DefaultPBKDF([]byte("correct horse battery staple"), []byte(bucketName+objectName)), |
| 6844 | }) |
| 6845 | if err != nil { |
| 6846 | logError(testName, function, args, startTime, "", "PutObject failed", err) |
| 6847 | return |
| 6848 | } |
no test coverage detected