forked from TrueCloudLab/rclone
asyncreader: make ErrorStreamAbandoned public
This commit is contained in:
parent
07908f3f54
commit
49e5299a95
2 changed files with 5 additions and 4 deletions
|
@ -21,7 +21,8 @@ const (
|
||||||
bufferCacheFlushTime = 5 * time.Second // flush the cached buffers after this long
|
bufferCacheFlushTime = 5 * time.Second // flush the cached buffers after this long
|
||||||
)
|
)
|
||||||
|
|
||||||
var errorStreamAbandoned = errors.New("stream abandoned")
|
// ErrorStreamAbandoned is returned when the input is closed before the end of the stream
|
||||||
|
var ErrorStreamAbandoned = errors.New("stream abandoned")
|
||||||
|
|
||||||
// AsyncReader will do async read-ahead from the input reader
|
// AsyncReader will do async read-ahead from the input reader
|
||||||
// and make the data available as an io.Reader.
|
// and make the data available as an io.Reader.
|
||||||
|
@ -132,7 +133,7 @@ func (a *AsyncReader) fill() (err error) {
|
||||||
if !ok {
|
if !ok {
|
||||||
// Return an error to show fill failed
|
// Return an error to show fill failed
|
||||||
if a.err == nil {
|
if a.err == nil {
|
||||||
return errorStreamAbandoned
|
return ErrorStreamAbandoned
|
||||||
}
|
}
|
||||||
return a.err
|
return a.err
|
||||||
}
|
}
|
||||||
|
|
|
@ -279,7 +279,7 @@ func testAsyncReaderClose(t *testing.T, writeto bool) {
|
||||||
// Abandon the copy
|
// Abandon the copy
|
||||||
a.Abandon()
|
a.Abandon()
|
||||||
wg.Wait()
|
wg.Wait()
|
||||||
assert.Equal(t, errorStreamAbandoned, copyErr)
|
assert.Equal(t, ErrorStreamAbandoned, copyErr)
|
||||||
// t.Logf("Copied %d bytes, err %v", copyN, copyErr)
|
// t.Logf("Copied %d bytes, err %v", copyN, copyErr)
|
||||||
assert.True(t, copyN > 0)
|
assert.True(t, copyN > 0)
|
||||||
}
|
}
|
||||||
|
@ -353,7 +353,7 @@ func TestAsyncReaderSkipBytes(t *testing.T) {
|
||||||
if initialRead >= len(data) {
|
if initialRead >= len(data) {
|
||||||
assert.Equal(t, err, io.EOF)
|
assert.Equal(t, err, io.EOF)
|
||||||
} else {
|
} else {
|
||||||
assert.True(t, err == errorStreamAbandoned || err == io.EOF)
|
assert.True(t, err == ErrorStreamAbandoned || err == io.EOF)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in a new issue