Files
mattermost/model/authorize_test.go

105 lines
2.4 KiB
Go
Raw Normal View History

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
package model
import (
"strings"
"testing"
"github.com/stretchr/testify/require"
)
func TestAuthJson(t *testing.T) {
a1 := AuthData{}
a1.ClientId = NewId()
a1.UserId = NewId()
a1.Code = NewId()
json := a1.ToJson()
ra1 := AuthDataFromJson(strings.NewReader(json))
require.Equal(t, a1.Code, ra1.Code, "codes didn't match")
a2 := AuthorizeRequest{}
a2.ClientId = NewId()
a2.Scope = NewId()
json = a2.ToJson()
ra2 := AuthorizeRequestFromJson(strings.NewReader(json))
require.Equal(t, a2.ClientId, ra2.ClientId, "client ids didn't match")
}
func TestAuthPreSave(t *testing.T) {
a1 := AuthData{}
a1.ClientId = NewId()
a1.UserId = NewId()
a1.Code = NewId()
a1.PreSave()
a1.IsExpired()
}
func TestAuthIsValid(t *testing.T) {
ad := AuthData{}
require.NotNil(t, ad.IsValid())
2017-04-03 14:37:58 -03:00
ad.ClientId = NewRandomString(28)
require.NotNil(t, ad.IsValid(), "Should have failed Client Id")
2017-04-03 14:37:58 -03:00
ad.ClientId = NewId()
require.NotNil(t, ad.IsValid())
2017-04-03 14:37:58 -03:00
ad.UserId = NewRandomString(28)
require.NotNil(t, ad.IsValid(), "Should have failed User Id")
2017-04-03 14:37:58 -03:00
ad.UserId = NewId()
require.NotNil(t, ad.IsValid())
2017-04-03 14:37:58 -03:00
ad.Code = NewRandomString(129)
require.NotNil(t, ad.IsValid(), "Should have failed Code to long")
2017-04-03 14:37:58 -03:00
ad.Code = ""
require.NotNil(t, ad.IsValid(), "Should have failed Code not set")
2017-04-03 14:37:58 -03:00
ad.Code = NewId()
require.NotNil(t, ad.IsValid())
2017-04-03 14:37:58 -03:00
ad.ExpiresIn = 0
require.NotNil(t, ad.IsValid(), "Should have failed invalid ExpiresIn")
2017-04-03 14:37:58 -03:00
ad.ExpiresIn = 1
require.NotNil(t, ad.IsValid())
2017-04-03 14:37:58 -03:00
ad.CreateAt = 0
require.NotNil(t, ad.IsValid(), "Should have failed Invalid Create At")
2017-04-03 14:37:58 -03:00
ad.CreateAt = 1
require.NotNil(t, ad.IsValid())
2017-04-03 14:37:58 -03:00
ad.State = NewRandomString(129)
require.NotNil(t, ad.IsValid(), "Should have failed invalid State")
2017-04-03 14:37:58 -03:00
ad.State = NewRandomString(128)
require.NotNil(t, ad.IsValid())
2017-04-03 14:37:58 -03:00
2018-02-07 16:21:22 -05:00
ad.Scope = NewRandomString(1025)
require.NotNil(t, ad.IsValid(), "Should have failed invalid Scope")
2017-04-03 14:37:58 -03:00
ad.Scope = NewRandomString(128)
require.NotNil(t, ad.IsValid())
2017-04-03 14:37:58 -03:00
ad.RedirectUri = ""
require.NotNil(t, ad.IsValid(), "Should have failed Redirect URI not set")
2017-04-03 14:37:58 -03:00
ad.RedirectUri = NewRandomString(28)
require.NotNil(t, ad.IsValid(), "Should have failed invalid URL")
2017-04-03 14:37:58 -03:00
ad.RedirectUri = NewRandomString(257)
require.NotNil(t, ad.IsValid(), "Should have failed invalid URL")
2017-04-03 14:37:58 -03:00
ad.RedirectUri = "http://example.com"
require.Nil(t, ad.IsValid())
}