Skip to content
Permalink
Browse files Browse the repository at this point in the history
Add test for username/login field conflict
(cherry picked from commit 7aabcf2)
  • Loading branch information
linoman authored and dsotirakis committed Sep 29, 2022
1 parent c658816 commit 5644758
Showing 1 changed file with 39 additions and 0 deletions.
39 changes: 39 additions & 0 deletions pkg/services/sqlstore/user_test.go
Expand Up @@ -47,6 +47,45 @@ func TestUserDataAccess(t *testing.T) {
require.False(t, query.Result.IsDisabled)
})

t.Run("Get User by login - user_2 uses user_1.email as login", func(t *testing.T) {
ss = InitTestDB(t)

// create user_1
cmd := models.CreateUserCommand{
Email: "user_1@mail.com",
Name: "user_1",
Login: "user_1",
Password: "user_1_password",
IsDisabled: true,
}
user_1, err := ss.CreateUser(context.Background(), cmd)
require.Nil(t, err)

// create user_2
cmd = models.CreateUserCommand{
Email: "user_2@mail.com",
Name: "user_2",
Login: "user_1@mail.com",
Password: "user_2_password",
IsDisabled: true,
}
user_2, err := ss.CreateUser(context.Background(), cmd)
require.Nil(t, err)

// query user database for user_1 email
query := models.GetUserByLoginQuery{LoginOrEmail: "user_1@mail.com"}
err = ss.GetUserByLogin(context.Background(), &query)
require.Nil(t, err)

// expect user_1 as result
require.Equal(t, user_1.Email, query.Result.Email)
require.Equal(t, user_1.Login, query.Result.Login)
require.Equal(t, user_1.Name, query.Result.Name)
require.NotEqual(t, user_2.Email, query.Result.Email)
require.NotEqual(t, user_2.Login, query.Result.Login)
require.NotEqual(t, user_2.Name, query.Result.Name)
})

t.Run("Testing DB - creates and loads disabled user", func(t *testing.T) {
ss = InitTestDB(t)
cmd := models.CreateUserCommand{
Expand Down

0 comments on commit 5644758

Please sign in to comment.