@@ -3,8 +3,8 @@ package check_test
3
3
import (
4
4
"context"
5
5
"fmt"
6
- "net"
7
6
"net/http"
7
+ "net/http/httptest"
8
8
"strings"
9
9
"testing"
10
10
"time"
@@ -21,7 +21,7 @@ import (
21
21
)
22
22
23
23
type TestProvider struct {
24
- srv * http .Server
24
+ srv * httptest .Server
25
25
URL string
26
26
RequestedScopes []string
27
27
GenClaims func () jwt.Claims
@@ -38,17 +38,7 @@ func (tp TestProvider) genToken() string {
38
38
}
39
39
40
40
func (tp * TestProvider ) Start () error {
41
- listener , err := net .Listen ("tcp" , "127.0.0.1:8765" )
42
- if err != nil {
43
- return fmt .Errorf ("failed starting listener: %w" , err )
44
- }
45
-
46
- tp .URL = fmt .Sprintf ("http://%s" , listener .Addr ().String ())
47
- mux := http.ServeMux {}
48
- tp .srv = & http.Server {
49
- Handler : & mux ,
50
- ReadHeaderTimeout : 5 * time .Second ,
51
- }
41
+ mux := & http.ServeMux {}
52
42
53
43
mux .HandleFunc ("/.well-known/openid-configuration" , func (w http.ResponseWriter , r * http.Request ) {
54
44
w .Header ().Add ("content-type" , "application/json" )
@@ -72,13 +62,14 @@ func (tp *TestProvider) Start() error {
72
62
}` , tp .genToken ())
73
63
})
74
64
75
- go tp .srv .Serve (listener )
65
+ tp .srv = httptest .NewServer (mux )
66
+ tp .URL = tp .srv .URL
76
67
77
68
return nil
78
69
}
79
70
80
71
func (tp TestProvider ) Shutdown () {
81
- tp .srv .Shutdown ( context . Background () )
72
+ tp .srv .Close ( )
82
73
}
83
74
84
75
func (tp TestProvider ) IssuerURL () string {
0 commit comments