]> Cypherpunks repositories - gostls13.git/commitdiff
net/http: fix flaky test
authorFabrizio Milo <mistobaan@gmail.com>
Mon, 12 May 2014 16:37:36 +0000 (09:37 -0700)
committerBrad Fitzpatrick <bradfitz@golang.org>
Mon, 12 May 2014 16:37:36 +0000 (09:37 -0700)
Prevent idle transport on race condition.

Fixes #7847

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=golang-codereviews
https://golang.org/cl/96230044

src/pkg/net/http/transport_test.go

index a5aaa6bab8da55d777e746021dcb40113b034259..a69e61720f5003596465ed54d6c35e7a90621bfa 100644 (file)
@@ -1553,8 +1553,10 @@ func TestTransportSocketLateBinding(t *testing.T) {
        dialGate := make(chan bool, 1)
        tr := &Transport{
                Dial: func(n, addr string) (net.Conn, error) {
-                       <-dialGate
-                       return net.Dial(n, addr)
+                       if <-dialGate {
+                               return net.Dial(n, addr)
+                       }
+                       return nil, errors.New("manually closed")
                },
                DisableKeepAlives: false,
        }
@@ -1589,7 +1591,7 @@ func TestTransportSocketLateBinding(t *testing.T) {
                t.Fatalf("/foo came from conn %q; /bar came from %q instead", fooAddr, barAddr)
        }
        barRes.Body.Close()
-       dialGate <- true
+       dialGate <- false
 }
 
 // Issue 2184