Skip to content

Commit a1cde36

Browse files
committed
fix tests
1 parent 9fa7c61 commit a1cde36

File tree

1 file changed

+54
-59
lines changed

1 file changed

+54
-59
lines changed

upyun/rest_test.go

Lines changed: 54 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -123,26 +123,26 @@ func TestCopyMove(t *testing.T) {
123123
}
124124

125125
/*
126-
func TestPutWithBufferAppend(t *testing.T) {
127-
s := BUF_CONTENT
128-
for k := 0; k < 3; k++ {
129-
r := strings.NewReader(s)
130-
err := up.Put(&PutObjectConfig{
131-
Path: REST_FILE_BUF_BUF,
132-
Reader: r,
133-
Headers: map[string]string{
134-
"Content-Length": fmt.Sprint(len(s)),
135-
},
136-
AppendContent: true,
137-
UseMD5: true,
138-
})
139-
if k != 0 {
140-
NotNil(t, err)
141-
} else {
142-
Nil(t, err)
126+
func TestPutWithBufferAppend(t *testing.T) {
127+
s := BUF_CONTENT
128+
for k := 0; k < 3; k++ {
129+
r := strings.NewReader(s)
130+
err := up.Put(&PutObjectConfig{
131+
Path: REST_FILE_BUF_BUF,
132+
Reader: r,
133+
Headers: map[string]string{
134+
"Content-Length": fmt.Sprint(len(s)),
135+
},
136+
AppendContent: true,
137+
UseMD5: true,
138+
})
139+
if k != 0 {
140+
NotNil(t, err)
141+
} else {
142+
Nil(t, err)
143+
}
143144
}
144145
}
145-
}
146146
*/
147147
func testMultiUpload(t *testing.T, key string, data []byte, partSize int64, parts []int, completed bool) *InitMultipartUploadResult {
148148
uploadResult, err := up.InitMultipartUpload(&InitMultipartUploadConfig{
@@ -253,22 +253,24 @@ func TestResumePut(t *testing.T) {
253253
testPoint := &BreakPointConfig{UploadID: result.UploadID, PartSize: result.PartSize,
254254
FileSize: fileInfo.Size(), FileModTime: fileInfo.ModTime(), LastTime: now}
255255

256-
// imitate upload some part and failed after testBreak part
257-
for i := 0; i <= testBreak; i++ {
258-
fragFile, err := newFragmentFile(fd, curSize, DefaultPartSize)
259-
Nil(t, err)
256+
ch := make(chan *Chunk, 1)
257+
go GetReadChunk(fd, fileInfo.Size(), DefaultPartSize, ch)
258+
// initate upload some part and failed after testBreak part
259+
for chunk := range ch {
260260
err = up.UploadPart(result, &UploadPartConfig{
261-
Reader: fragFile,
262-
PartSize: DefaultPartSize,
263-
PartID: i,
261+
Reader: chunk,
262+
PartSize: int64(chunk.Len()),
263+
PartID: chunk.ID(),
264264
})
265265
Nil(t, err)
266+
if testBreak == chunk.ID() {
267+
break
268+
}
269+
testPoint.PartID = chunk.ID() + 1
270+
curSize += int64(chunk.Len())
266271
res, err := up.GetResumeProcess(result.Path)
267272
Nil(t, err)
268-
Equal(t, int64(i+1), res.NextPartID)
269-
270-
curSize += DefaultPartSize
271-
testPoint.PartID = i + 1
273+
Equal(t, int64(testPoint.PartID), res.NextPartID)
272274
resSize += res.NextPartSize
273275
}
274276
Equal(t, curSize, resSize)
@@ -565,28 +567,28 @@ func TestResumeUpload(t *testing.T) {
565567
maxPartID := int((fileInfo.Size()+result.PartSize-1)/result.PartSize - 1)
566568
now := time.Now()
567569

568-
// imitate break part
570+
// initate break part
569571
testBreak := 5
570-
571-
var curSize int64 = 0
572+
ch := make(chan *Chunk, 1)
573+
go GetReadChunk(fd, fileInfo.Size(), DefaultPartSize, ch)
572574
testPoint := &BreakPointConfig{UploadID: result.UploadID}
573-
for i := 0; i <= testBreak; i++ {
574-
fragFile, err := newFragmentFile(fd, curSize, DefaultPartSize)
575-
Nil(t, err)
575+
for chunk := range ch {
576576
err = up.UploadPart(result, &UploadPartConfig{
577-
Reader: fragFile,
578-
PartSize: DefaultPartSize,
579-
PartID: i,
577+
Reader: chunk,
578+
PartSize: int64(chunk.Len()),
579+
PartID: chunk.ID(),
580580
})
581581
Nil(t, err)
582-
curSize += DefaultPartSize
583-
testPoint.PartID = i + 1
582+
testPoint.PartID = chunk.ID() + 1
583+
if testBreak == chunk.ID() {
584+
break
585+
}
584586
}
585587
tests := []struct {
586588
BreakPointConfig
587589
expected BreakPointConfig
588590
}{
589-
// imitate failed in upload part stage
591+
// initate failed in upload part stage
590592
{
591593
BreakPointConfig{
592594
UploadID: result.UploadID, PartID: testBreak + 1, PartSize: result.PartSize,
@@ -610,7 +612,7 @@ func TestResumeUpload(t *testing.T) {
610612
},
611613
}
612614

613-
// imitate breakPoint
615+
// initate breakPoint
614616
for _, test := range tests {
615617
point := test.BreakPointConfig
616618
// resume upload
@@ -673,33 +675,26 @@ func TestGetDisorderResumeProcess(t *testing.T) {
673675
})
674676
Nil(t, err)
675677

676-
// imitate upload part failed
677-
testBreak := 10
678+
// initate upload part failed
678679
var curSize int64 = 0
679680
fileSize := fileInfo.Size()
680681

681-
// imitate upload some part and failed after testBreak part
682-
for i := 0; i <= testBreak; i++ {
683-
fragFile, err := newFragmentFile(fd, curSize, DefaultPartSize)
684-
Nil(t, err)
685-
partSize := int64(DefaultPartSize)
686-
res := fileSize - curSize
687-
if res < DefaultPartSize {
688-
partSize = res
689-
}
682+
ch := make(chan *Chunk, 1)
683+
go GetReadChunk(fd, fileSize, DefaultPartSize, ch)
684+
// initate upload some part and failed after testBreak part
685+
for chunk := range ch {
690686
err = up.UploadPart(result, &UploadPartConfig{
691-
Reader: fragFile,
692-
PartSize: partSize,
693-
PartID: i,
687+
Reader: chunk,
688+
PartSize: int64(chunk.Len()),
689+
PartID: chunk.ID(),
694690
})
695691
Nil(t, err)
696-
697-
curSize += partSize
692+
curSize += int64(chunk.Len())
698693
}
699694
resp, err := up.GetResumeProcess(result.Path)
700695

701696
Nil(t, err)
702-
Equal(t, testBreak+1, len(resp.Parts))
697+
Equal(t, 11, len(resp.Parts))
703698
Equal(t, curSize, fileSize)
704699
err = up.CompleteMultipartUpload(result, &CompleteMultipartUploadConfig{})
705700
Nil(t, err)

0 commit comments

Comments
 (0)