@@ -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