summaryrefslogtreecommitdiff
path: root/pkg
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-05-15 09:40:06 -0600
committermo khan <mo@mokhan.ca>2025-05-15 09:40:06 -0600
commita0891d0871e3db4d6b03899c58b811374bb016de (patch)
treed9b20535e5fe6fd8838846ca0ad3a89c7fa42d21 /pkg
parenta636172d657fe71470455b337ef5c49191d66cbd (diff)
refactor: provide oauth config to oidc.New
Diffstat (limited to 'pkg')
-rw-r--r--pkg/oidc/oidc.go13
-rw-r--r--pkg/oidc/oidc_test.go12
2 files changed, 11 insertions, 14 deletions
diff --git a/pkg/oidc/oidc.go b/pkg/oidc/oidc.go
index fc0eaee..5dc2447 100644
--- a/pkg/oidc/oidc.go
+++ b/pkg/oidc/oidc.go
@@ -10,15 +10,6 @@ type OpenID struct {
Config *oauth2.Config
}
-func New(provider *oidc.Provider, clientID, clientSecret, callbackURL string) *OpenID {
- return &OpenID{
- Provider: provider,
- Config: &oauth2.Config{
- ClientID: clientID,
- ClientSecret: clientSecret,
- RedirectURL: callbackURL,
- Endpoint: provider.Endpoint(),
- Scopes: []string{oidc.ScopeOpenID, "profile", "email"},
- },
- }
+func New(provider *oidc.Provider, config *oauth2.Config) *OpenID {
+ return &OpenID{Provider: provider, Config: config}
}
diff --git a/pkg/oidc/oidc_test.go b/pkg/oidc/oidc_test.go
index a3dc7e4..6ec35ab 100644
--- a/pkg/oidc/oidc_test.go
+++ b/pkg/oidc/oidc_test.go
@@ -3,7 +3,9 @@ package oidc
import (
"testing"
+ "github.com/coreos/go-oidc/v3/oidc"
"github.com/stretchr/testify/assert"
+ "golang.org/x/oauth2"
)
func TestOpenID(t *testing.T) {
@@ -13,9 +15,13 @@ func TestOpenID(t *testing.T) {
t.Run("GET /.well-known/openid-configuration", func(t *testing.T) {
openID := New(
srv.Provider,
- srv.MockOIDC.ClientID,
- srv.MockOIDC.ClientSecret,
- "https://example.com/oauth/callback",
+ &oauth2.Config{
+ ClientID: srv.MockOIDC.ClientID,
+ ClientSecret: srv.MockOIDC.ClientSecret,
+ RedirectURL: "https://example.com/oauth/callback",
+ Endpoint: srv.Provider.Endpoint(),
+ Scopes: []string{oidc.ScopeOpenID, "profile", "email"},
+ },
)
assert.Equal(t, srv.AuthorizationEndpoint(), openID.Provider.Endpoint().AuthURL)