package faker import ( "encoding/json" "testing" "github.com/stretchr/testify/assert" ) func TestMockAuthUser(t *testing.T) { usr := MockAuthUser() assert.Equal(t, testUsername, usr.Username) assert.Equal(t, testEmail, usr.Email) assert.Equal(t, testOrg, usr.Organization) assert.Equal(t, testRoles, usr.Roles) assert.Equal(t, testBSLToken, usr.Token) } func TestMockOktaAuth(t *testing.T) { usr := MockOktaAuth() assert.Equal(t, testUsername, usr.Username) assert.Equal(t, testEmail, usr.Email) assert.Equal(t, testFirstName, *usr.FirstName) assert.Equal(t, testLastName, *usr.LastName) assert.Equal(t, testFullname, usr.FullName) assert.Equal(t, testOrg, usr.Organization) assert.Equal(t, testRoles, usr.Roles) assert.Equal(t, testOktaToken, usr.Token) assert.Equal(t, testRefreshToken, usr.RefreshToken) assert.True(t, usr.Valid) } func TestMockGoodLoginResponse(t *testing.T) { resp := MockGoodLoginResponse() assert.Equal(t, token, resp.Data.(map[string]interface{})["login"].(map[string]interface{})["token"]) assert.Nil(t, resp.Errors) assert.Nil(t, resp.Extensions) } func TestMockBadLoginResponse(t *testing.T) { resp := MockBadLoginResponse() assert.Nil(t, resp.Data) assert.Nil(t, resp.Extensions) errResponse, err := json.Marshal(badLoginError) assert.NoError(t, err) assert.Equal(t, string(errResponse), string(resp.Errors)) } func TestMockGoodLoginWithOktaResponse(t *testing.T) { resp := MockGoodLoginWithOktaResponse() assert.Nil(t, resp.Errors) assert.Nil(t, resp.Extensions) loginWithOktaResp := resp.Data.(map[string]interface{})["loginWithOkta"].(map[string]interface{}) assert.Equal(t, testFullname, loginWithOktaResp["fullName"]) assert.Equal(t, testFirstName, loginWithOktaResp["firstName"]) assert.Equal(t, testLastName, loginWithOktaResp["lastName"]) assert.Equal(t, testEmail, loginWithOktaResp["email"]) assert.Equal(t, testRefreshToken, loginWithOktaResp["refreshToken"]) assert.Equal(t, 1700146793, loginWithOktaResp["sessionTime"]) assert.Equal(t, token, loginWithOktaResp["token"]) assert.Equal(t, true, loginWithOktaResp["valid"]) assert.Equal(t, testRoles, loginWithOktaResp["roles"]) assert.Equal(t, fullTestOrg, loginWithOktaResp["organization"]) assert.Equal(t, testUsername, loginWithOktaResp["username"]) } func TestMockBadLoginWithOktaResponse(t *testing.T) { resp := MockBadLoginWithOktaResponse() assert.Nil(t, resp.Data) assert.Nil(t, resp.Extensions) errResponse, err := json.Marshal(badLoginWithOktaError) assert.NoError(t, err) assert.Equal(t, string(errResponse), string(resp.Errors)) } func TestMockGoodTokenExchangeResponse(t *testing.T) { resp := MockGoodTokenExchangeResponse() assert.Nil(t, resp.Errors) assert.Nil(t, resp.Extensions) tokenExchangeResp := resp.Data.(map[string]interface{})["tokenExchange"].(string) assert.Equal(t, token, tokenExchangeResp) } func TestMockBadTokenExchangeResponse(t *testing.T) { resp := MockBadTokenExchangeResponse() assert.Nil(t, resp.Data) assert.Nil(t, resp.Extensions) errResponse, err := json.Marshal(tokenExchangeError) assert.NoError(t, err) assert.Equal(t, string(errResponse), string(resp.Errors)) }