Skip to content

Commit 5644758

Browse files
linomandsotirakis
authored andcommitted
Add test for username/login field conflict
(cherry picked from commit 7aabcf2)
1 parent c658816 commit 5644758

File tree

1 file changed

+39
-0
lines changed

1 file changed

+39
-0
lines changed

Diff for: pkg/services/sqlstore/user_test.go

+39
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,45 @@ func TestUserDataAccess(t *testing.T) {
4747
require.False(t, query.Result.IsDisabled)
4848
})
4949

50+
t.Run("Get User by login - user_2 uses user_1.email as login", func(t *testing.T) {
51+
ss = InitTestDB(t)
52+
53+
// create user_1
54+
cmd := models.CreateUserCommand{
55+
Email: "user_1@mail.com",
56+
Name: "user_1",
57+
Login: "user_1",
58+
Password: "user_1_password",
59+
IsDisabled: true,
60+
}
61+
user_1, err := ss.CreateUser(context.Background(), cmd)
62+
require.Nil(t, err)
63+
64+
// create user_2
65+
cmd = models.CreateUserCommand{
66+
Email: "user_2@mail.com",
67+
Name: "user_2",
68+
Login: "user_1@mail.com",
69+
Password: "user_2_password",
70+
IsDisabled: true,
71+
}
72+
user_2, err := ss.CreateUser(context.Background(), cmd)
73+
require.Nil(t, err)
74+
75+
// query user database for user_1 email
76+
query := models.GetUserByLoginQuery{LoginOrEmail: "user_1@mail.com"}
77+
err = ss.GetUserByLogin(context.Background(), &query)
78+
require.Nil(t, err)
79+
80+
// expect user_1 as result
81+
require.Equal(t, user_1.Email, query.Result.Email)
82+
require.Equal(t, user_1.Login, query.Result.Login)
83+
require.Equal(t, user_1.Name, query.Result.Name)
84+
require.NotEqual(t, user_2.Email, query.Result.Email)
85+
require.NotEqual(t, user_2.Login, query.Result.Login)
86+
require.NotEqual(t, user_2.Name, query.Result.Name)
87+
})
88+
5089
t.Run("Testing DB - creates and loads disabled user", func(t *testing.T) {
5190
ss = InitTestDB(t)
5291
cmd := models.CreateUserCommand{

0 commit comments

Comments
 (0)