Skip to content

Commit 9edc41c

Browse files
Jacksevennt
authored andcommitted
fix: 修复 OSS SDK Copy 函数调用时 src/dst 参数顺序问题 && 添加测试用例
1 parent 63df64d commit 9edc41c

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

oss.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ func (ossClient *OSS) Copy(ctx context.Context, srcKey, dstKey string, options .
6565
for k, v := range cfg.meta {
6666
ossOptions = append(ossOptions, oss.Meta(k, v))
6767
}
68-
_, err = bucket.CopyObject(dstKey, srcKeyWithBucket, ossOptions...)
68+
_, err = bucket.CopyObject(srcKeyWithBucket, dstKey, ossOptions...)
6969
if err != nil {
7070
return err
7171
}

oss_test.go

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ import (
2020

2121
const (
2222
guid = "test123"
23+
guidCopySrc = "guid-copy-src"
24+
guidCopyDst = "guid-copy-dst"
2325
content = "aaaaaa"
2426
expectLength = 6
2527
expectHead = 1
@@ -305,3 +307,23 @@ func TestOSS_Exists(t *testing.T) {
305307
assert.NoError(t, err)
306308
assert.Equal(t, false, ok)
307309
}
310+
311+
func TestOSS_Copy(t *testing.T) {
312+
ctx := context.TODO()
313+
meta := make(map[string]string)
314+
meta["head"] = strconv.Itoa(expectHead)
315+
meta["length"] = strconv.Itoa(expectLength)
316+
317+
err := ossCmp.Put(ctx, guidCopySrc, strings.NewReader(content), meta)
318+
assert.NoError(t, err)
319+
320+
err = ossCmp.Del(ctx, guidCopyDst)
321+
assert.NoError(t, err)
322+
323+
err = ossCmp.Copy(ctx, guidCopySrc, guidCopyDst, CopyWithRawSrcKey())
324+
assert.NoError(t, err)
325+
326+
ok, err := ossCmp.Exists(ctx, guidCopyDst)
327+
assert.NoError(t, err)
328+
assert.Equal(t, true, ok)
329+
}

0 commit comments

Comments
 (0)