@@ -2,7 +2,6 @@ package main
22
33import (
44 "bytes"
5- "context"
65 "crypto/tls"
76 "net/http"
87 "net/http/httptest"
@@ -59,38 +58,30 @@ func TestShouldProperlyConvertToHttpHeaders(t *testing.T) {
5958func TestHTTP2Client (t * testing.T ) {
6059 responseSize := 1024
6160 response := bytes .Repeat ([]byte {'a' }, responseSize )
62- url := "localhost:8443"
63- s := & http.Server {
64- Addr : url ,
65- Handler : http .HandlerFunc (
66- func (w http.ResponseWriter , r * http.Request ) {
67- if ! r .ProtoAtLeast (2 , 0 ) {
68- t .Errorf ("invalid HTTP proto version: %v" , r .Proto )
69- }
70-
71- w .WriteHeader (http .StatusOK )
72- _ , err := w .Write (response )
73- if err != nil {
74- t .Error (err )
75- }
76- },
77- ),
78- TLSConfig : & tls.Config {
79- NextProtos : []string {"http/2.0" },
80- },
61+ s := httptest .NewUnstartedServer (http .HandlerFunc (func (w http.ResponseWriter , r * http.Request ) {
62+ if ! r .ProtoAtLeast (2 , 0 ) {
63+ t .Errorf ("invalid HTTP proto version: %v" , r .Proto )
64+ }
65+
66+ w .WriteHeader (http .StatusOK )
67+ _ , err := w .Write (response )
68+ if err != nil {
69+ t .Error (err )
70+ }
71+ }))
72+ s .EnableHTTP2 = true
73+ s .TLS = & tls.Config {
74+ InsecureSkipVerify : true ,
8175 }
82- errChan := make (chan error )
83- go func () {
84- err := s .ListenAndServeTLS ("testserver.cert" , "testserver.key" )
85- errChan <- err
86- }()
76+ s .StartTLS ()
77+ defer s .Close ()
8778
8879 bytesRead , bytesWritten := int64 (0 ), int64 (0 )
8980 c := newHTTPClient (& clientOpts {
9081 HTTP2 : true ,
9182
9283 headers : new (headersList ),
93- url : "https://" + url ,
84+ url : s . URL ,
9485 method : "GET" ,
9586 tlsConfig : & tls.Config {
9687 InsecureSkipVerify : true ,
@@ -106,10 +97,6 @@ func TestHTTP2Client(t *testing.T) {
10697 t .Error (err )
10798 return
10899 }
109- ctx := context .Background ()
110- if err := s .Shutdown (ctx ); err != nil {
111- t .Error (err )
112- }
113100 if code != http .StatusOK {
114101 t .Errorf ("invalid response code: %v" , code )
115102 }
@@ -119,13 +106,6 @@ func TestHTTP2Client(t *testing.T) {
119106 if atomic .LoadInt64 (& bytesWritten ) == 0 {
120107 t .Errorf ("empty request of size: %v" , bytesWritten )
121108 }
122- err = s .Close ()
123- if err != nil {
124- t .Error (err )
125- }
126- if err := <- errChan ; err != http .ErrServerClosed {
127- t .Error (err )
128- }
129109}
130110
131111func TestHTTP1Clients (t * testing.T ) {
0 commit comments