1 package faker
2
3 import (
4 "encoding/json"
5 "testing"
6
7 "github.com/stretchr/testify/assert"
8 )
9
10 func TestMockAuthUser(t *testing.T) {
11 usr := MockAuthUser()
12 assert.Equal(t, testUsername, usr.Username)
13 assert.Equal(t, testEmail, usr.Email)
14 assert.Equal(t, testOrg, usr.Organization)
15 assert.Equal(t, testRoles, usr.Roles)
16 assert.Equal(t, testBSLToken, usr.Token)
17 }
18
19 func TestMockOktaAuth(t *testing.T) {
20 usr := MockOktaAuth()
21 assert.Equal(t, testUsername, usr.Username)
22 assert.Equal(t, testEmail, usr.Email)
23 assert.Equal(t, testFirstName, *usr.FirstName)
24 assert.Equal(t, testLastName, *usr.LastName)
25 assert.Equal(t, testFullname, usr.FullName)
26 assert.Equal(t, testOrg, usr.Organization)
27 assert.Equal(t, testRoles, usr.Roles)
28 assert.Equal(t, testOktaToken, usr.Token)
29 assert.Equal(t, testRefreshToken, usr.RefreshToken)
30 assert.True(t, usr.Valid)
31 }
32
33 func TestMockGoodLoginResponse(t *testing.T) {
34 resp := MockGoodLoginResponse()
35 assert.Equal(t, token, resp.Data.(map[string]interface{})["login"].(map[string]interface{})["token"])
36 assert.Nil(t, resp.Errors)
37 assert.Nil(t, resp.Extensions)
38 }
39
40 func TestMockBadLoginResponse(t *testing.T) {
41 resp := MockBadLoginResponse()
42 assert.Nil(t, resp.Data)
43 assert.Nil(t, resp.Extensions)
44 errResponse, err := json.Marshal(badLoginError)
45 assert.NoError(t, err)
46 assert.Equal(t, string(errResponse), string(resp.Errors))
47 }
48
49 func TestMockGoodLoginWithOktaResponse(t *testing.T) {
50 resp := MockGoodLoginWithOktaResponse()
51 assert.Nil(t, resp.Errors)
52 assert.Nil(t, resp.Extensions)
53 loginWithOktaResp := resp.Data.(map[string]interface{})["loginWithOkta"].(map[string]interface{})
54 assert.Equal(t, testFullname, loginWithOktaResp["fullName"])
55 assert.Equal(t, testFirstName, loginWithOktaResp["firstName"])
56 assert.Equal(t, testLastName, loginWithOktaResp["lastName"])
57 assert.Equal(t, testEmail, loginWithOktaResp["email"])
58 assert.Equal(t, testRefreshToken, loginWithOktaResp["refreshToken"])
59 assert.Equal(t, 1700146793, loginWithOktaResp["sessionTime"])
60 assert.Equal(t, token, loginWithOktaResp["token"])
61 assert.Equal(t, true, loginWithOktaResp["valid"])
62 assert.Equal(t, testRoles, loginWithOktaResp["roles"])
63 assert.Equal(t, fullTestOrg, loginWithOktaResp["organization"])
64 assert.Equal(t, testUsername, loginWithOktaResp["username"])
65 }
66
67 func TestMockBadLoginWithOktaResponse(t *testing.T) {
68 resp := MockBadLoginWithOktaResponse()
69 assert.Nil(t, resp.Data)
70 assert.Nil(t, resp.Extensions)
71 errResponse, err := json.Marshal(badLoginWithOktaError)
72 assert.NoError(t, err)
73 assert.Equal(t, string(errResponse), string(resp.Errors))
74 }
75
76 func TestMockGoodTokenExchangeResponse(t *testing.T) {
77 resp := MockGoodTokenExchangeResponse()
78 assert.Nil(t, resp.Errors)
79 assert.Nil(t, resp.Extensions)
80 tokenExchangeResp := resp.Data.(map[string]interface{})["tokenExchange"].(string)
81 assert.Equal(t, token, tokenExchangeResp)
82 }
83
84 func TestMockBadTokenExchangeResponse(t *testing.T) {
85 resp := MockBadTokenExchangeResponse()
86 assert.Nil(t, resp.Data)
87 assert.Nil(t, resp.Extensions)
88 errResponse, err := json.Marshal(tokenExchangeError)
89 assert.NoError(t, err)
90 assert.Equal(t, string(errResponse), string(resp.Errors))
91 }
92
View as plain text