mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
Add more OAuth unit tests (#5946)
This commit is contained in:
@@ -51,7 +51,7 @@ func (ad *AccessData) IsValid() *AppError {
|
||||
return NewLocAppError("AccessData.IsValid", "model.access.is_valid.refresh_token.app_error", nil, "")
|
||||
}
|
||||
|
||||
if len(ad.RedirectUri) > 256 {
|
||||
if len(ad.RedirectUri) == 0 || len(ad.RedirectUri) > 256 || !IsValidHttpUrl(ad.RedirectUri) {
|
||||
return NewLocAppError("AccessData.IsValid", "model.access.is_valid.redirect_uri.app_error", nil, "")
|
||||
}
|
||||
|
||||
|
||||
@@ -27,12 +27,32 @@ func TestAccessIsValid(t *testing.T) {
|
||||
ad := AccessData{}
|
||||
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("should have failed")
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.ClientId = NewRandomString(28)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed Client Id")
|
||||
}
|
||||
|
||||
ad.ClientId = ""
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed Client Id")
|
||||
}
|
||||
|
||||
ad.ClientId = NewId()
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("should have failed")
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.UserId = NewRandomString(28)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed User Id")
|
||||
}
|
||||
|
||||
ad.UserId = ""
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed User Id")
|
||||
}
|
||||
|
||||
ad.UserId = NewId()
|
||||
@@ -40,7 +60,37 @@ func TestAccessIsValid(t *testing.T) {
|
||||
t.Fatal("should have failed")
|
||||
}
|
||||
|
||||
ad.Token = NewRandomString(22)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed Token")
|
||||
}
|
||||
|
||||
ad.Token = NewId()
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.RefreshToken = NewRandomString(28)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed Refresh Token")
|
||||
}
|
||||
|
||||
ad.RefreshToken = NewId()
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.RedirectUri = ""
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed Redirect URI not set")
|
||||
}
|
||||
|
||||
ad.RedirectUri = NewRandomString(28)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed invalid URL")
|
||||
}
|
||||
|
||||
ad.RedirectUri = "http://example.com"
|
||||
if err := ad.IsValid(); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@@ -49,7 +49,7 @@ func (ad *AuthData) IsValid() *AppError {
|
||||
return NewLocAppError("AuthData.IsValid", "model.authorize.is_valid.create_at.app_error", nil, "client_id="+ad.ClientId)
|
||||
}
|
||||
|
||||
if len(ad.RedirectUri) > 256 {
|
||||
if len(ad.RedirectUri) == 0 || len(ad.RedirectUri) > 256 || !IsValidHttpUrl(ad.RedirectUri) {
|
||||
return NewLocAppError("AuthData.IsValid", "model.authorize.is_valid.redirect_uri.app_error", nil, "client_id="+ad.ClientId)
|
||||
}
|
||||
|
||||
|
||||
@@ -39,28 +39,98 @@ func TestAuthIsValid(t *testing.T) {
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.ClientId = NewRandomString(28)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed Client Id")
|
||||
}
|
||||
|
||||
ad.ClientId = NewId()
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.UserId = NewRandomString(28)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed User Id")
|
||||
}
|
||||
|
||||
ad.UserId = NewId()
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.Code = NewRandomString(129)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed Code to long")
|
||||
}
|
||||
|
||||
ad.Code = ""
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed Code not set")
|
||||
}
|
||||
|
||||
ad.Code = NewId()
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.ExpiresIn = 0
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed invalid ExpiresIn")
|
||||
}
|
||||
|
||||
ad.ExpiresIn = 1
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.CreateAt = 0
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed Invalid Create At")
|
||||
}
|
||||
|
||||
ad.CreateAt = 1
|
||||
if err := ad.IsValid(); err != nil {
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.State = NewRandomString(129)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed invalid State")
|
||||
}
|
||||
|
||||
ad.State = NewRandomString(128)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
ad.Scope = NewRandomString(129)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed invalid Scope")
|
||||
}
|
||||
|
||||
ad.Scope = NewRandomString(128)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal()
|
||||
}
|
||||
|
||||
ad.RedirectUri = ""
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed Redirect URI not set")
|
||||
}
|
||||
|
||||
ad.RedirectUri = NewRandomString(28)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed invalid URL")
|
||||
}
|
||||
|
||||
ad.RedirectUri = NewRandomString(257)
|
||||
if err := ad.IsValid(); err == nil {
|
||||
t.Fatal("Should have failed invalid URL")
|
||||
}
|
||||
|
||||
ad.RedirectUri = "http://example.com"
|
||||
if err := ad.IsValid(); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user