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

Function testDecryptedCopyObject

functional_tests.go:10144–10196  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

10142}
10143
10144func testDecryptedCopyObject() {
10145 // initialize logging params
10146 startTime := time.Now()
10147 testName := getFuncName()
10148 function := "CopyObject(destination, source)"
10149 args := map[string]interface{}{}
10150
10151 c, err := NewClient(ClientConfig{})
10152 if err != nil {
10153 logError(testName, function, args, startTime, "", "MinIO v2 client object creation failed", err)
10154 return
10155 }
10156
10157 bucketName, objectName := randString(60, rand.NewSource(time.Now().UnixNano()), "minio-go-test-"), "object"
10158 if err = c.MakeBucket(context.Background(), bucketName, minio.MakeBucketOptions{Region: "us-east-1"}); err != nil {
10159 logError(testName, function, args, startTime, "", "MakeBucket failed", err)
10160 return
10161 }
10162
10163 defer cleanupBucket(bucketName, c)
10164
10165 encryption := encrypt.DefaultPBKDF([]byte("correct horse battery staple"), []byte(bucketName+objectName))
10166 _, err = c.PutObject(context.Background(), bucketName, objectName, bytes.NewReader(bytes.Repeat([]byte("a"), 1024*1024)), 1024*1024, minio.PutObjectOptions{
10167 ServerSideEncryption: encryption,
10168 })
10169 if err != nil {
10170 logError(testName, function, args, startTime, "", "PutObject call failed", err)
10171 return
10172 }
10173
10174 src := minio.CopySrcOptions{
10175 Bucket: bucketName,
10176 Object: objectName,
10177 Encryption: encrypt.SSECopy(encryption),
10178 }
10179 args["source"] = src
10180
10181 dst := minio.CopyDestOptions{
10182 Bucket: bucketName,
10183 Object: "decrypted-" + objectName,
10184 }
10185 args["destination"] = dst
10186
10187 if _, err = c.CopyObject(context.Background(), dst, src); err != nil {
10188 logError(testName, function, args, startTime, "", "CopyObject failed", err)
10189 return
10190 }
10191 if _, err = c.GetObject(context.Background(), bucketName, "decrypted-"+objectName, minio.GetObjectOptions{}); err != nil {
10192 logError(testName, function, args, startTime, "", "GetObject failed", err)
10193 return
10194 }
10195 logSuccess(testName, function, args, startTime)
10196}
10197
10198func testSSECMultipartEncryptedToSSECCopyObjectPart() {
10199 // initialize logging params

Callers 1

mainFunction · 0.85

Calls 11

MakeBucketMethod · 0.95
PutObjectMethod · 0.95
CopyObjectMethod · 0.95
GetObjectMethod · 0.95
SSECopyFunction · 0.92
getFuncNameFunction · 0.85
NewClientFunction · 0.85
logErrorFunction · 0.85
cleanupBucketFunction · 0.85
logSuccessFunction · 0.85
randStringFunction · 0.70

Tested by

no test coverage detected