This fixes a race condition where
TestReverseProxyWebSocketCancelation appears to
panic after otherwise passing.
Fixes #38863
Change-Id: Ib89f4c40da879b92ac1fc5ed8b6e48da929e4a18
Reviewed-on: https://go-review.googlesource.com/c/go/+/232257
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
for i := 0; i < n; i++ {
if _, err := bufrw.WriteString(nthResponse(i)); err != nil {
- t.Errorf("Writing response #%d failed: %v", i, err)
+ select {
+ case <-triggerCancelCh:
+ default:
+ t.Errorf("Writing response #%d failed: %v", i, err)
+ }
+ return
}
bufrw.Flush()
time.Sleep(time.Second)
}
if _, err := bufrw.WriteString(terminalMsg); err != nil {
- t.Errorf("Failed to write terminal message: %v", err)
+ select {
+ case <-triggerCancelCh:
+ default:
+ t.Errorf("Failed to write terminal message: %v", err)
+ }
}
bufrw.Flush()
}))