audio: Improve test flakiness

This commit is contained in:
Hajime Hoshi 2018-12-27 03:34:27 +09:00
parent 25581b2be8
commit ed7552962d

View File

@ -70,11 +70,21 @@ func TestGC(t *testing.T) {
runtime.KeepAlive(p)
p = nil
runtime.GC()
ch := make(chan struct{})
go func() {
defer close(ch)
for i := 0; i < 10; i++ {
got = PlayersNumForTesting()
if want := 0; got == want {
return
}
// 100[ms] should be enough all the bytes are consumed.
// TODO: This is a darty hack. Would it be possible to use virtual time?
time.Sleep(100 * time.Millisecond)
got = PlayersNumForTesting()
if want := 0; got != want {
t.Errorf("PlayersNum() after GC: got: %d, want: %d", got, want)
}
t.Errorf("time out")
}()
<-ch
}