@@ -11,7 +11,6 @@ import (
11
11
"net"
12
12
"net/http"
13
13
"net/http/httptest"
14
- "strings"
15
14
"sync"
16
15
"testing"
17
16
"time"
@@ -212,7 +211,7 @@ func TestPing(t *testing.T) {
212
211
}
213
212
}
214
213
215
- func TestHTTP2WebSocketFallback (t * testing.T ) {
214
+ func TestHTTP2OnlyServer (t * testing.T ) {
216
215
serverPrivateKey := key .NewNode ()
217
216
s := derp .NewServer (serverPrivateKey , t .Logf )
218
217
defer s .Close ()
@@ -234,6 +233,7 @@ func TestHTTP2WebSocketFallback(t *testing.T) {
234
233
brw := bufio .NewReadWriter (bufio .NewReader (wc ), bufio .NewWriter (wc ))
235
234
s .Accept (context .Background (), wc , brw , r .RemoteAddr )
236
235
}))
236
+ defer httpsrv .Close ()
237
237
httpsrv .TLS = & tls.Config {
238
238
NextProtos : []string {"h2" },
239
239
GetCertificate : func (chi * tls.ClientHelloInfo ) (* tls.Certificate , error ) {
@@ -257,23 +257,11 @@ func TestHTTP2WebSocketFallback(t *testing.T) {
257
257
RootCAs : httpsrv .Client ().Transport .(* http.Transport ).TLSClientConfig .RootCAs ,
258
258
}
259
259
defer c .Close ()
260
- reasonCh := make (chan string , 1 )
261
- c .SetForcedWebsocketCallback (func (region int , reason string ) {
262
- select {
263
- case reasonCh <- reason :
264
- default :
265
- }
266
- })
260
+
267
261
err = c .Connect (context .Background ())
268
- if err == nil {
269
- // Expect an error!
270
- t .Fatal ("client didn't error on initial connect" )
271
- }
272
- reason := <- reasonCh
273
- if ! strings .Contains (reason , "DERP requires Upgrade which needs" ) {
274
- t .Fatalf ("reason doesn't contain message: %s" , reason )
275
- }
276
- if err := c .Connect (context .Background ()); err != nil {
277
- t .Fatalf ("client Connect: %v" , err )
262
+ if err != nil {
263
+ t .Fatalf ("client errored initial connect: %v" , err )
278
264
}
265
+
266
+ c .Close ()
279
267
}
0 commit comments