diff --git a/bfe_basic/condition/primitive_test.go b/bfe_basic/condition/primitive_test.go index 8ee6a9da..5144512a 100644 --- a/bfe_basic/condition/primitive_test.go +++ b/bfe_basic/condition/primitive_test.go @@ -234,7 +234,6 @@ func TestContextValueFetcher(t *testing.T) { contextVal, err := hf.Fetch(req) if err != nil { t.Fatalf("Fetch(): %v", err) - t.FailNow() } // check diff --git a/bfe_http2/server_test.go b/bfe_http2/server_test.go index 9030b1e0..7cb4a899 100644 --- a/bfe_http2/server_test.go +++ b/bfe_http2/server_test.go @@ -2224,12 +2224,22 @@ func testServerResponse(t testing.TB, handler func(http.ResponseWriter, *http.Request) error, client func(*serverTester), ) { - errc := make(chan error, 1) st := newServerTester(t, func(w http.ResponseWriter, r *http.Request) { if r.Body == nil { t.Fatal("nil Body") } - errc <- handler(w, r) + errc := make(chan error, 1) + go func() { + errc <- handler(w, r) + }() + select { + case err := <-errc: + if err != nil { + t.Fatalf("Error in handler: %v", err) + } + case <-time.After(2 * time.Second): + t.Error("timeout waiting for handler to finish") + } }) defer st.Close() @@ -2246,15 +2256,6 @@ func testServerResponse(t testing.TB, case <-time.After(5 * time.Second): t.Fatal("timeout") } - - select { - case err := <-errc: - if err != nil { - t.Fatalf("Error in handler: %v", err) - } - case <-time.After(2 * time.Second): - t.Error("timeout waiting for handler to finish") - } } // readBodyHandler returns an http Handler func that reads len(want) @@ -3000,7 +3001,6 @@ func TestNoRstPostAfterGOAWAY(t *testing.T) { } if gf, ok := f.(*RSTStreamFrame); ok && gf.StreamID == 1 { t.Fatal("got rst but want no ret") - break } } diff --git a/bfe_spdy/server_test.go b/bfe_spdy/server_test.go index 3b975f3e..3305a281 100644 --- a/bfe_spdy/server_test.go +++ b/bfe_spdy/server_test.go @@ -461,12 +461,23 @@ func testServerResponse(t testing.TB, handler func(http.ResponseWriter, *http.Request) error, client func(*serverTester), ) { - errc := make(chan error, defaultMaxStreams) st := newServerTester(t, func(w http.ResponseWriter, r *http.Request) { if r.Body == nil { t.Fatal("nil Body") } - errc <- handler(w, r) + errc := make(chan error, defaultMaxStreams) + go func() { + errc <- handler(w, r) + }() + // verify output of server handler + select { + case err := <-errc: + if err != nil { + t.Fatalf("Error in handler: %v", err) + } + case <-time.After(2 * time.Second): + t.Error("timeout waiting for handler to finish") + } }) defer st.Close() @@ -487,16 +498,6 @@ func testServerResponse(t testing.TB, case <-time.After(10 * time.Second): t.Fatal("timeout") } - - // verify output of server handler - select { - case err := <-errc: - if err != nil { - t.Fatalf("Error in handler: %v", err) - } - case <-time.After(2 * time.Second): - t.Error("timeout waiting for handler to finish") - } } // testServerRejects tests that the server hangs up with a GOAWAY @@ -844,7 +845,7 @@ func TestServer_CloseNotify_After_StreamError(t *testing.T) { }, nil, "content-length", "3") } -//writes a SynStream frames with StreamId 1 and EndStream set. +// writes a SynStream frames with StreamId 1 and EndStream set. func getSlash(st *serverTester) error { return st.writeSynStream(1, nil, true) }