@@ -0,0 +1,42 @@
1+package providers
2+
3+import (
4+ "net/url"
5+
6+ . "github.com/onsi/ginkgo"
7+ . "github.com/onsi/gomega"
8+)
9+
10+var _ = Describe("Keycloak OIDC Provider Tests", func() {
11+ Context("New Provider Init", func() {
12+ It("uses the passed ProviderData", func() {
13+ p := NewKeycloakOIDCProvider(
14+ &ProviderData{
15+ LoginURL: &url.URL{
16+ Scheme: "https",
17+ Host: "keycloak-oidc.com",
18+ Path: "/oauth/auth"},
19+ RedeemURL: &url.URL{
20+ Scheme: "https",
21+ Host: "keycloak-oidc.com",
22+ Path: "/oauth/token"},
23+ ProfileURL: &url.URL{
24+ Scheme: "https",
25+ Host: "keycloak-oidc.com",
26+ Path: "/api/v3/user"},
27+ ValidateURL: &url.URL{
28+ Scheme: "https",
29+ Host: "keycloak-oidc.com",
30+ Path: "/api/v3/user"},
31+ Scope: "openid email profile"})
32+ providerData := p.Data()
33+
34+ Expect(providerData.ProviderName).To(Equal(keycloakOIDCProviderName))
35+ Expect(providerData.LoginURL.String()).To(Equal("https://keycloak-oidc.com/oauth/auth"))
36+ Expect(providerData.RedeemURL.String()).To(Equal("https://keycloak-oidc.com/oauth/token"))
37+ Expect(providerData.ProfileURL.String()).To(Equal("https://keycloak-oidc.com/api/v3/user"))
38+ Expect(providerData.ValidateURL.String()).To(Equal("https://keycloak-oidc.com/api/v3/user"))
39+ Expect(providerData.Scope).To(Equal("openid email profile"))
40+ })
41+ })
42+})