summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-05-14 17:14:12 -0600
committermo khan <mo@mokhan.ca>2025-05-14 17:14:12 -0600
commit4a090d42089ded8ce38be51d08776131a6dd2e05 (patch)
tree2955e79404c1c7449bd847471690b545a5484e8c
parent7b74ddbe8478bbf901685cea7826d96f042c142e (diff)
refactor: remove unnecessary params from ctor
-rw-r--r--app/controllers/sessions/controller_test.go4
-rw-r--r--app/controllers/sessions/service_test.go4
-rw-r--r--app/init.go12
-rw-r--r--app/middleware/id_token_test.go17
-rw-r--r--pkg/oidc/oidc.go4
-rw-r--r--pkg/oidc/oidc_test.go7
6 files changed, 8 insertions, 40 deletions
diff --git a/app/controllers/sessions/controller_test.go b/app/controllers/sessions/controller_test.go
index 73a373f..3e7f662 100644
--- a/app/controllers/sessions/controller_test.go
+++ b/app/controllers/sessions/controller_test.go
@@ -24,14 +24,12 @@ func TestSessions(t *testing.T) {
clientID := srv.MockOIDC.Config().ClientID
clientSecret := srv.MockOIDC.Config().ClientSecret
- cfg, err := oidc.New(
- t.Context(),
+ cfg := oidc.New(
srv.Provider,
clientID,
clientSecret,
"callback_url",
)
- require.NoError(t, err)
controller := New(cfg, http.DefaultClient)
mux := http.NewServeMux()
controller.MountTo(mux)
diff --git a/app/controllers/sessions/service_test.go b/app/controllers/sessions/service_test.go
index c98488a..05baa2f 100644
--- a/app/controllers/sessions/service_test.go
+++ b/app/controllers/sessions/service_test.go
@@ -20,14 +20,12 @@ func TestService(t *testing.T) {
clientID := srv.MockOIDC.Config().ClientID
clientSecret := srv.MockOIDC.Config().ClientSecret
- cfg, err := oidc.New(
- t.Context(),
+ cfg := oidc.New(
srv.Provider,
clientID,
clientSecret,
"/session/callback",
)
- require.NoError(t, err)
svc := NewService(cfg, http.DefaultClient)
t.Run("Exchange", func(t *testing.T) {
diff --git a/app/init.go b/app/init.go
index 959048b..8de5461 100644
--- a/app/init.go
+++ b/app/init.go
@@ -7,7 +7,6 @@ import (
xoidc "github.com/coreos/go-oidc/v3/oidc"
"github.com/rs/zerolog"
- "github.com/xlgmokha/x/pkg/env"
"github.com/xlgmokha/x/pkg/ioc"
"github.com/xlgmokha/x/pkg/log"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/cfg"
@@ -58,21 +57,12 @@ func init() {
})
})
ioc.RegisterSingleton[*oidc.OpenID](ioc.Default, func() *oidc.OpenID {
- ctx := context.WithValue(context.Background(), oauth2.HTTPClient, ioc.MustResolve[*http.Client](ioc.Default))
- item, err := oidc.New(
- ctx,
+ return oidc.New(
ioc.MustResolve[*xoidc.Provider](ioc.Default),
cfg.OAuthClientID,
cfg.OAuthClientSecret,
cfg.OAuthRedirectURL,
)
- if err != nil {
- ioc.MustResolve[*zerolog.Logger](ioc.Default).Err(err).Send()
- if env.Fetch("APP_ENV", "") == "test" {
- os.Exit(1)
- }
- }
- return item
})
ioc.Register[*sessions.Controller](ioc.Default, func() *sessions.Controller {
return sessions.New(
diff --git a/app/middleware/id_token_test.go b/app/middleware/id_token_test.go
index 3df9a7d..b363d2c 100644
--- a/app/middleware/id_token_test.go
+++ b/app/middleware/id_token_test.go
@@ -1,38 +1,23 @@
package middleware
import (
- "context"
"net/http"
- "os"
"testing"
"github.com/oauth2-proxy/mockoidc"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
- "github.com/xlgmokha/x/pkg/log"
"github.com/xlgmokha/x/pkg/test"
xcfg "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/cfg"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/oidc"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/web"
- "golang.org/x/oauth2"
)
func TestIDToken(t *testing.T) {
srv := oidc.NewTestServer(t)
defer srv.Close()
- client := &http.Client{Transport: &web.Transport{Logger: log.New(os.Stdout, log.Fields{})}}
- cfg := srv.MockOIDC.Config()
- ctx := context.WithValue(t.Context(), oauth2.HTTPClient, client)
- openID, err := oidc.New(
- ctx,
- srv.Provider,
- cfg.ClientID,
- cfg.ClientSecret,
- "https://example.com/oauth/callback",
- )
- require.NoError(t, err)
-
+ openID := oidc.New(srv.Provider, srv.MockOIDC.ClientID, srv.MockOIDC.ClientSecret, "https://example.com/oauth/callback")
middleware := IDToken(openID, IDTokenFromSessionCookie)
t.Run("when an active session cookie is provided", func(t *testing.T) {
diff --git a/pkg/oidc/oidc.go b/pkg/oidc/oidc.go
index 6ec1005..4704f63 100644
--- a/pkg/oidc/oidc.go
+++ b/pkg/oidc/oidc.go
@@ -13,7 +13,7 @@ type OpenID struct {
OIDCConfig *oidc.Config
}
-func New(ctx context.Context, provider *oidc.Provider, clientID, clientSecret, callbackURL string) (*OpenID, error) {
+func New(provider *oidc.Provider, clientID, clientSecret, callbackURL string) *OpenID {
return &OpenID{
Provider: provider,
Config: &oauth2.Config{
@@ -26,7 +26,7 @@ func New(ctx context.Context, provider *oidc.Provider, clientID, clientSecret, c
OIDCConfig: &oidc.Config{
ClientID: clientID,
},
- }, nil
+ }
}
func (o *OpenID) ValidateIDToken(ctx context.Context, rawIDToken RawToken) (*IDToken, error) {
diff --git a/pkg/oidc/oidc_test.go b/pkg/oidc/oidc_test.go
index bb040a2..a3dc7e4 100644
--- a/pkg/oidc/oidc_test.go
+++ b/pkg/oidc/oidc_test.go
@@ -1,11 +1,9 @@
package oidc
import (
- "context"
"testing"
"github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestOpenID(t *testing.T) {
@@ -13,15 +11,14 @@ func TestOpenID(t *testing.T) {
defer srv.Close()
t.Run("GET /.well-known/openid-configuration", func(t *testing.T) {
- openID, err := New(
- context.Background(),
+ openID := New(
srv.Provider,
srv.MockOIDC.ClientID,
srv.MockOIDC.ClientSecret,
"https://example.com/oauth/callback",
)
- require.NoError(t, err)
assert.Equal(t, srv.AuthorizationEndpoint(), openID.Provider.Endpoint().AuthURL)
+ assert.Equal(t, srv.TokenEndpoint(), openID.Provider.Endpoint().TokenURL)
})
}