mirror of
https://github.com/rclone/rclone.git
synced 2024-11-22 09:32:29 +08:00
vfs: add test for writeBack.cancelUpload
This commit is contained in:
parent
ef2d036884
commit
ed32a759ed
|
@ -573,3 +573,35 @@ func TestWriteBackRemove(t *testing.T) {
|
|||
checkNotInLookup(t, wb, wbItem)
|
||||
assert.True(t, pi2.cancelled)
|
||||
}
|
||||
|
||||
func TestWriteBackCancelUpload(t *testing.T) {
|
||||
wb, cancel := newTestWriteBack(t)
|
||||
defer cancel()
|
||||
|
||||
item := &Item{}
|
||||
|
||||
// cancel when not in writeback
|
||||
assert.False(t, wb.cancelUpload(item))
|
||||
|
||||
// add item
|
||||
pi := newPutItem(t)
|
||||
wbItem := wb.add(item, "one", true, pi.put)
|
||||
checkOnHeap(t, wb, wbItem)
|
||||
checkInLookup(t, wb, wbItem)
|
||||
|
||||
// cancel when not uploading
|
||||
assert.False(t, wb.cancelUpload(item))
|
||||
checkOnHeap(t, wb, wbItem)
|
||||
checkInLookup(t, wb, wbItem)
|
||||
|
||||
// wait for upload to start
|
||||
<-pi.started
|
||||
checkNotOnHeap(t, wb, wbItem)
|
||||
checkInLookup(t, wb, wbItem)
|
||||
|
||||
// cancel when uploading
|
||||
assert.True(t, wb.cancelUpload(item))
|
||||
checkOnHeap(t, wb, wbItem)
|
||||
checkInLookup(t, wb, wbItem)
|
||||
assert.True(t, pi.cancelled)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user