git.iko.soy/typeable/oauth2-proxy
on master help sign in
add basic tests
commitb5b49b7357a1ffe3300217c0093c6983c5b8256c authorAleksei Sizov <a.sizov@typeable.io> dateFri 3 Dec 2021, 15:44 (5 years ago) parente4c0388
2 files changed+27−7
providers/atlassian-cloud.go+7−7 providers/atlassian-cloud_test.go+20
providers/atlassian-cloud.go+7−7
@@ -2,8 +2,8 @@ package providers
22
33import (
44 "context"
5− "net/url"
65 "errors"
6+ "net/url"
77
88 "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/apis/sessions"
99 "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/requests"
@@ -19,8 +19,8 @@ var _ Provider = (*AtlassianProvider)(nil)
1919const (
2020 atlassianProviderName = "Atlassian"
2121 atlassianDefaultScope = "read:me"
22− atlassianPrompt = "consent"
23− atlassianAudience = "api.atlassian.com"
22+ atlassianPrompt = "consent"
23+ atlassianAudience = "api.atlassian.com"
2424)
2525
2626var (
@@ -74,21 +74,21 @@ func (p *AtlassianProvider) ValidateSession(ctx context.Context, s *sessions.Ses
7474 return validateToken(ctx, p, s.AccessToken, makeOIDCHeader(s.AccessToken))
7575}
7676func (p *AtlassianProvider) GetEmailAddress(ctx context.Context, s *sessions.SessionState) (string, error) {
77− type me_email struct {
77+ type meEmail struct {
7878 Email string `json:"email"`
7979 }
80− var email me_email
80+ var email meEmail
8181 err := requests.New(atlassianDefaultValidateURL.String()).
8282 WithContext(ctx).
8383 WithHeaders(makeOIDCHeader(s.AccessToken)).
8484 Do().
8585 UnmarshalInto(&email)
86−
86+
8787 if err != nil {
8888 return "", err
8989 }
9090 if email.Email == "" {
91− return "", errors.New("No email in respose")
91+ return "", errors.New("no email in respose")
9292 }
9393 return email.Email, nil
9494}
providers/atlassian-cloud_test.gonew file+20
@@ -0,0 +1,20 @@
1+package providers
2+
3+import (
4+ "testing"
5+
6+ . "github.com/onsi/gomega"
7+)
8+
9+func TestNewAtlassianProvider(t *testing.T) {
10+ g := NewWithT(t)
11+
12+ // Test that defaults are set when calling for a new provider with nothing set
13+ providerData := NewAtlassianProvider(&ProviderData{}).Data()
14+ g.Expect(providerData.ProviderName).To(Equal("Atlassian"))
15+ g.Expect(providerData.LoginURL.String()).To(Equal("https://auth.atlassian.com/authorize"))
16+ g.Expect(providerData.RedeemURL.String()).To(Equal("https://auth.atlassian.com/oauth/token"))
17+ g.Expect(providerData.ProfileURL.String()).To(Equal(""))
18+ g.Expect(providerData.ValidateURL.String()).To(Equal("https://api.atlassian.com/me"))
19+ g.Expect(providerData.Scope).To(Equal("read:me"))
20+}