forked from evergreen-ci/gimlet
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathauth_user_basic_test.go
More file actions
42 lines (34 loc) · 1.01 KB
/
auth_user_basic_test.go
File metadata and controls
42 lines (34 loc) · 1.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package gimlet
import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestBasicUserImplementation(t *testing.T) {
assert := assert.New(t)
// constructors
assert.Implements((*User)(nil), &BasicUser{})
opts, err := NewBasicUserOptions("id")
require.NoError(t, err)
assert.Implements((*User)(nil), NewBasicUser(opts))
var usr *BasicUser
// accessors
usr = &BasicUser{
ID: "usrid",
EmailAddress: "usr@example.net",
Key: "sekret",
AccessToken: "access_token",
RefreshToken: "refresh_token",
AccessRoles: []string{"admin"},
Name: "name",
}
assert.Equal(usr.Username(), "usrid")
assert.Equal(usr.Email(), "usr@example.net")
assert.Equal(usr.GetAPIKey(), "sekret")
assert.Equal(usr.GetAccessToken(), "access_token")
assert.Equal(usr.GetRefreshToken(), "refresh_token")
assert.Equal(usr.Roles()[0], "admin")
assert.Equal(usr.DisplayName(), "name")
assert.False(userHasRole(usr, "sudo"))
assert.True(userHasRole(usr, "admin"))
}