...

Source file src/edge-infra.dev/pkg/edge/auth-proxy/faker/faker_test.go

Documentation: edge-infra.dev/pkg/edge/auth-proxy/faker

     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