summaryrefslogtreecommitdiff
path: root/pkg/web
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-04-17 13:12:05 -0600
committermo khan <mo@mokhan.ca>2025-04-17 13:12:05 -0600
commit7a1f5be3e1884679425d9182179182a1765a6a6f (patch)
tree32fbe7fe30f470cd08ec65b585631698f40f2cb0 /pkg/web
parentc2446fee22eb42eada473288cd329d4b09baa687 (diff)
test: extract oidc server test helper
Diffstat (limited to 'pkg/web')
-rw-r--r--pkg/web/middleware/unpack_token_test.go29
1 files changed, 4 insertions, 25 deletions
diff --git a/pkg/web/middleware/unpack_token_test.go b/pkg/web/middleware/unpack_token_test.go
index 9a34a35..814aa79 100644
--- a/pkg/web/middleware/unpack_token_test.go
+++ b/pkg/web/middleware/unpack_token_test.go
@@ -20,20 +20,11 @@ import (
)
func TestUnpackToken(t *testing.T) {
- srv, err := mockoidc.Run()
- require.NoError(t, err)
-
- srv.AddMiddleware(func(next http.Handler) http.Handler {
- return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
- t.Logf("%v %v %v\n", r.Method, r.URL.Path, r.URL.Query())
- next.ServeHTTP(w, r)
- })
- })
-
- defer srv.Shutdown()
+ srv := test.NewOIDCServer(t)
+ defer srv.Close()
client := &http.Client{Transport: &web.Transport{Logger: log.New(os.Stdout, log.Fields{})}}
- cfg := srv.Config()
+ cfg := srv.MockOIDC.Config()
ctx := context.WithValue(t.Context(), oauth2.HTTPClient, client)
openID, err := oidc.New(
ctx,
@@ -49,20 +40,8 @@ func TestUnpackToken(t *testing.T) {
t.Run("when an active session cookie is provided", func(t *testing.T) {
t.Run("attaches the token to the request context", func(t *testing.T) {
user := mockoidc.DefaultUser()
- code := "12345"
- srv.QueueUser(user)
- srv.QueueCode(code)
-
- url := openID.Config.AuthCodeURL("state")
- response, err := client.Get(url)
- require.NoError(t, err)
- t.Logf("%v\n", response)
-
- token, err := openID.Config.Exchange(ctx, code)
- require.NoError(t, err)
- rawIDToken, ok := token.Extra("id_token").(string)
- require.True(t, ok)
+ token, rawIDToken := srv.CreateTokensFor(user)
tokens := &oidc.Tokens{Token: token, IDToken: rawIDToken}
encoded := x.Must(tokens.ToBase64String())