• Brad Fitzpatrick's avatar
    net/http: deflake TestClientRedirectContext · d8722012
    Brad Fitzpatrick authored
    The test was checking for 1 of 2 possible error values. But based on
    goroutine scheduling and the randomness of select statement receive
    cases, it was possible for a 3rd type of error to be returned.
    
    This modifies the code (not the test) to make that third type of error
    actually the second type of error, which is a nicer error message.
    
    The test is no longer flaky. The flake was very reproducible with a
    5ms sleep before the select at the end of Transport.getConn.
    
    Thanks to Github user @jaredborner for debugging.
    
    Fixes #16049
    
    Change-Id: I0d2a036c9555a8d2618b07bab01f28558d2b0b2c
    Reviewed-on: https://go-review.googlesource.com/24748Reviewed-by: default avatarAndrew Gerrand <adg@golang.org>
    Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    d8722012
transport.go 60.6 KB