MCPcopy Create free account
hub / github.com/couchbase/sync_gateway / TestInitOIDCClient

Function TestInitOIDCClient

auth/oidc_test.go:230–267  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

228}
229
230func TestInitOIDCClient(t *testing.T) {
231 defaultWait := OIDCDiscoveryRetryWait
232 OIDCDiscoveryRetryWait = 10 * time.Millisecond
233 defer func() { OIDCDiscoveryRetryWait = defaultWait }()
234
235 ctx := base.TestCtx(t)
236
237 t.Run("initialize openid connect client with nil provider", func(t *testing.T) {
238 provider := oidcProviderForTest(t, &OIDCProvider{})
239 err := provider.initOIDCClient(ctx)
240 require.Error(t, err, "initialized openid connect client with nil provider")
241 assert.Contains(t, err.Error(), "Issuer not defined")
242 })
243
244 t.Run("initialize openid connect client with unavailable issuer", func(t *testing.T) {
245 provider := oidcProviderForTest(t, &OIDCProvider{
246 JWTConfigCommon: JWTConfigCommon{
247 Issuer: "http://127.0.0.1:12345/auth",
248 },
249 CallbackURL: base.Ptr("http://127.0.0.1:12345/callback"),
250 })
251 err := provider.initOIDCClient(ctx)
252 require.Error(t, err, "openid connect client with unavailable issuer")
253 assert.Contains(t, err.Error(), ErrMsgUnableToDiscoverConfig)
254 })
255
256 t.Run("initialize openid connect client with valid provider config", func(t *testing.T) {
257 provider := oidcProviderForTest(t, &OIDCProvider{
258 JWTConfigCommon: JWTConfigCommon{
259 ClientID: base.Ptr("foo"),
260 Issuer: "https://accounts.google.com",
261 },
262 CallbackURL: base.Ptr("http://sgw-test:4984/_callback"),
263 })
264 err := provider.initOIDCClient(ctx)
265 require.NoError(t, err, "openid connect client with unavailable issuer")
266 })
267}
268
269func TestConcurrentSetConfig(t *testing.T) {
270 providerLock := sync.Mutex{}

Callers

nothing calls this directly

Calls 7

TestCtxFunction · 0.92
PtrFunction · 0.92
oidcProviderForTestFunction · 0.85
initOIDCClientMethod · 0.80
RunMethod · 0.65
ContainsMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected