Skip to content

Commit db77216

Browse files
fraenkelneild
authored andcommitted
http2: remove race from TestTransportCancelDataResponseRace
Wait for the client request to return before cancelling the request. Then cancel the request and send more data. Fixes: golang/go#45701 Change-Id: Icc81f9c6fefdda1d978e6234c9894f552daecd45 Reviewed-on: https://go-review.googlesource.com/c/net/+/320369 Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Damien Neil <dneil@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> Reviewed-by: Damien Neil <dneil@google.com>
1 parent d0c6ba3 commit db77216

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

‎http2/transport_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3412,7 +3412,7 @@ func TestClientConnPing(t *testing.T) {
34123412
// connection.
34133413
func TestTransportCancelDataResponseRace(t *testing.T) {
34143414
cancel := make(chan struct{})
3415-
clientGotError := make(chan bool, 1)
3415+
clientGotResponse := make(chan bool, 1)
34163416

34173417
const msg = "Hello."
34183418
st := newServerTester(t, func(w http.ResponseWriter, r *http.Request) {
@@ -3425,8 +3425,8 @@ func TestTransportCancelDataResponseRace(t *testing.T) {
34253425
io.WriteString(w, "Some data.")
34263426
w.(http.Flusher).Flush()
34273427
if i == 2 {
3428+
<-clientGotResponse
34283429
close(cancel)
3429-
<-clientGotError
34303430
}
34313431
time.Sleep(10 * time.Millisecond)
34323432
}
@@ -3440,13 +3440,13 @@ func TestTransportCancelDataResponseRace(t *testing.T) {
34403440
req, _ := http.NewRequest("GET", st.ts.URL, nil)
34413441
req.Cancel = cancel
34423442
res, err := c.Do(req)
3443+
clientGotResponse <- true
34433444
if err != nil {
34443445
t.Fatal(err)
34453446
}
34463447
if _, err = io.Copy(ioutil.Discard, res.Body); err == nil {
34473448
t.Fatal("unexpected success")
34483449
}
3449-
clientGotError <- true
34503450

34513451
res, err = c.Get(st.ts.URL + "/hello")
34523452
if err != nil {

0 commit comments

Comments
 (0)