Skip to content

Commit 8ec00e6

Browse files
committed
Merge pull request moby#18518 from MHBauer/spurious-timing
adjust test sleep timing to avoid spurious failure
2 parents f814033 + 81c334f commit 8ec00e6

File tree

2 files changed

+15
-15
lines changed

2 files changed

+15
-15
lines changed

pkg/integration/utils.go

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -272,25 +272,25 @@ func RandomTmpDirPath(s string, platform string) string {
272272
return filepath.ToSlash(path) // Using /
273273
}
274274

275-
// ConsumeWithSpeed reads chunkSize bytes from reader after every interval.
276-
// Returns total read bytes.
275+
// ConsumeWithSpeed reads chunkSize bytes from reader before sleeping
276+
// for interval duration. Returns total read bytes. Send true to the
277+
// stop channel to return before reading to EOF on the reader.
277278
func ConsumeWithSpeed(reader io.Reader, chunkSize int, interval time.Duration, stop chan bool) (n int, err error) {
278279
buffer := make([]byte, chunkSize)
279280
for {
281+
var readBytes int
282+
readBytes, err = reader.Read(buffer)
283+
n += readBytes
284+
if err != nil {
285+
if err == io.EOF {
286+
err = nil
287+
}
288+
return
289+
}
280290
select {
281291
case <-stop:
282292
return
283-
default:
284-
var readBytes int
285-
readBytes, err = reader.Read(buffer)
286-
n += readBytes
287-
if err != nil {
288-
if err == io.EOF {
289-
err = nil
290-
}
291-
return
292-
}
293-
time.Sleep(interval)
293+
case <-time.After(interval):
294294
}
295295
}
296296
}

pkg/integration/utils_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,7 @@ func TestConsumeWithSpeed(t *testing.T) {
363363
reader := strings.NewReader("1234567890")
364364
chunksize := 2
365365

366-
bytes1, err := ConsumeWithSpeed(reader, chunksize, 1*time.Millisecond, nil)
366+
bytes1, err := ConsumeWithSpeed(reader, chunksize, 1*time.Second, nil)
367367
if err != nil {
368368
t.Fatal(err)
369369
}
@@ -385,7 +385,7 @@ func TestConsumeWithSpeedWithStop(t *testing.T) {
385385
stopIt <- true
386386
}()
387387

388-
bytes1, err := ConsumeWithSpeed(reader, chunksize, 2*time.Millisecond, stopIt)
388+
bytes1, err := ConsumeWithSpeed(reader, chunksize, 20*time.Millisecond, stopIt)
389389
if err != nil {
390390
t.Fatal(err)
391391
}

0 commit comments

Comments
 (0)