Пример #1
0
        public void AuthenticateShouldLoginTheRegisteredUser()
        {
            var options = new DbContextOptionsBuilder <ExpensesDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(AuthenticateShouldLoginTheRegisteredUser))
                          .Options;

            using (var context = new ExpensesDbContext(options))
            {
                var validator           = new RegisterValidator();
                var validatorUser       = new UserRoleValidator();
                var crValidator         = new CreateValidator();
                var userUserRoleService = new UserUserRoleService(validatorUser, context);
                var usersService        = new UsersService(context, validator, crValidator, userUserRoleService, config);

                UserRole addUserRoleRegular = new UserRole
                {
                    Name        = "Regular",
                    Description = "Created for test"
                };
                context.UserRoles.Add(addUserRoleRegular);
                context.SaveChanges();

                var added = new Lab6.Viewmodels.RegisterPostModel
                {
                    FirstName = "Catalin",
                    LastName  = "Albulescu",
                    Username  = "******",
                    Email     = "*****@*****.**",
                    Password  = "******",
                };
                var result = usersService.Register(added);

                var authenticated = new Lab6.Viewmodels.LoginPostModel
                {
                    Username = "******",
                    Password = "******"
                };
                //valid authentification
                var authresult = usersService.Authenticate(added.Username, added.Password);

                Assert.IsNotNull(authresult);
                Assert.AreEqual(1, authresult.Id);
                Assert.AreEqual(authenticated.Username, authresult.Username);

                //invalid user authentification
                //var authresult1 = usersService.Authenticate("unknown", "abcdefg");
                //Assert.IsNull(authresult1);
            }
        }
Пример #2
0
        public void AuthenticateShouldLogTheRegisteredUser()
        {
            var options = new DbContextOptionsBuilder <MoviesDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(AuthenticateShouldLogTheRegisteredUser))
                          .Options;

            using (var context = new MoviesDbContext(options))
            {
                var validator           = new RegisterValidator();
                var validatorUser       = new UserRoleValidator();
                var userUserRoleService = new UserUserRoleService(validatorUser, context);
                var usersService        = new UsersService(context, validator, userUserRoleService, config);

                UserRole addUserRoleRegular = new UserRole
                {
                    Name        = "Regular",
                    Description = "Creat pentru testare"
                };
                context.UserRole.Add(addUserRoleRegular);
                context.SaveChanges();

                var added = new Lab3Movie.ViewModels.RegisterPostModel
                {
                    FirstName = "firstName1",
                    LastName  = "lastName1",
                    UserName  = "******",
                    Email     = "*****@*****.**",
                    Password  = "******"
                };
                var result = usersService.Register(added);

                var authenticated = new Lab3Movie.ViewModels.LoginPostModel
                {
                    Username = "******",
                    Password = "******"
                };
                //valid authentification
                var authresult = usersService.Authenticate(added.UserName, added.Password);

                Assert.IsNotNull(authresult);
                Assert.AreEqual(1, authresult.Id);
                Assert.AreEqual(authenticated.Username, authresult.UserName);

                //invalid user authentification
                var authresult1 = usersService.Authenticate("unknown", "abcdefg");
                Assert.IsNull(authresult1);
            }
        }
Пример #3
0
        public void GetCurentUserShouldReturnAccesToKlaims()
        {
            var options = new DbContextOptionsBuilder <ExpensesDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(GetCurentUserShouldReturnAccesToKlaims))
                          .Options;

            using (var context = new ExpensesDbContext(options))
            {
                var regValidator        = new RegisterValidator();
                var crValidator         = new CreateValidator();
                var validatorUser       = new UserRoleValidator();
                var userUserRoleService = new UserUserRoleService(validatorUser, context);
                var usersService        = new UsersService(context, regValidator, crValidator, userUserRoleService, config);

                UserRole addUserRoleRegular = new UserRole
                {
                    Name        = "Regular",
                    Description = "Created for test"
                };
                context.UserRoles.Add(addUserRoleRegular);
                context.SaveChanges();

                var added = new Lab6.Viewmodels.RegisterPostModel
                {
                    FirstName = "firstName",
                    LastName  = "lastName",
                    Username  = "******",
                    Email     = "*****@*****.**",
                    Password  = "******"
                };
                var result = usersService.Register(added);

                var authenticated = new Lab6.Viewmodels.LoginPostModel
                {
                    Username = "******",
                    Password = "******"
                };
                var authresult = usersService.Authenticate(added.Username, added.Password);


                //usersService.GetCurentUser(httpContext);

                Assert.IsNotNull(authresult);
            }
        }
        public void GetUserRoleNameByIdShouldReturnUserRoleName()
        {
            var options = new DbContextOptionsBuilder <ExpensesDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(GetUserRoleNameByIdShouldReturnUserRoleName))
                          .Options;

            using (var context = new ExpensesDbContext(options))
            {
                var userUserRoleService = new UserUserRoleService(null, context);

                User userToAdd = new User
                {
                    FirstName     = "Ana",
                    LastName      = "Marcus",
                    Username      = "******",
                    Email         = "*****@*****.**",
                    Password      = "******",
                    CreatedAt     = DateTime.Now,
                    UserUserRoles = new List <UserUserRole>()
                };
                context.Users.Add(userToAdd);

                UserRole addUserRole = new UserRole
                {
                    Name        = "Newbegginer",
                    Description = "A role for a new guy..."
                };
                context.UserRoles.Add(addUserRole);
                context.SaveChanges();

                context.UserUserRoles.Add(new UserUserRole
                {
                    User      = userToAdd,
                    UserRole  = addUserRole,
                    StartTime = DateTime.Now,
                    EndTime   = null
                });
                context.SaveChanges();

                string userRoleName = userUserRoleService.GetUserRoleNameById(userToAdd.Id);
                Assert.AreEqual("Newbegginer", userRoleName);
                Assert.AreEqual("Ana", userToAdd.FirstName);
            }
        }
Пример #5
0
        public void GetByIdShouldReturnUserRole()
        {
            var options = new DbContextOptionsBuilder <TasksDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(GetByIdShouldReturnUserRole))
                          .Options;

            using (var context = new TasksDbContext(options))
            {
                var userUserRolesService = new UserUserRoleService(null, context);

                User userToAdd = new User
                {
                    Email        = "*****@*****.**",
                    LastName     = "Ion",
                    FirstName    = "POpescu",
                    Password     = "******",
                    DateAdded    = DateTime.Now,
                    UserUserRole = new List <UserUserRole>()
                };
                context.Users.Add(userToAdd);

                UserRole addUserRole = new UserRole
                {
                    Name        = "Rol testare",
                    Description = "Creat pentru testare"
                };
                context.UserRole.Add(addUserRole);
                context.SaveChanges();

                context.UserUserRole.Add(new UserUserRole
                {
                    User      = userToAdd,
                    UserRole  = addUserRole,
                    StartTime = DateTime.Now,
                    EndTime   = null
                });
                context.SaveChanges();

                var userUserRoleGetModels = userUserRolesService.GetHistoryRoleById(1);
                Assert.IsNotNull(userUserRoleGetModels.FirstOrDefaultAsync(uur => uur.EndTime == null));
            }
        }
Пример #6
0
        public void GetUserRoleNameByIdShouldReturnUserRoleName()
        {
            var options = new DbContextOptionsBuilder <TasksDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(GetUserRoleNameByIdShouldReturnUserRoleName))
                          .Options;

            using (var context = new TasksDbContext(options))
            {
                var userUserRolesService = new UserUserRoleService(null, context);

                User userToAdd = new User
                {
                    Email        = "*****@*****.**",
                    LastName     = "Ion",
                    FirstName    = "POpescu",
                    Password     = "******",
                    DateAdded    = DateTime.Now,
                    UserUserRole = new List <UserUserRole>()
                };
                context.Users.Add(userToAdd);

                UserRole addUserRole = new UserRole
                {
                    Name        = "Regular",
                    Description = "Creat pentru testare"
                };
                context.UserRole.Add(addUserRole);
                context.SaveChanges();

                context.UserUserRole.Add(new UserUserRole
                {
                    User      = userToAdd,
                    UserRole  = addUserRole,
                    StartTime = DateTime.Parse("2019-06-13T00:00:00"),
                    EndTime   = null
                });
                context.SaveChanges();

                string userRoleName = userUserRolesService.GetUserRoleNameById(1);
                Assert.AreEqual("Regular", userRoleName);
            }
        }
Пример #7
0
        public void CreateShouldAddTheUserUserRole()
        {
            var options = new DbContextOptionsBuilder <TasksDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(CreateShouldAddTheUserUserRole))
                          .Options;

            using (var context = new TasksDbContext(options))
            {
                var validator            = new UserRoleValidator();
                var userUserRolesService = new UserUserRoleService(validator, context);

                User userToAdd = new User
                {
                    Email        = "*****@*****.**",
                    LastName     = "Ion",
                    FirstName    = "POpescu",
                    Password     = "******",
                    DateAdded    = DateTime.Now,
                    UserUserRole = new List <UserUserRole>()
                };
                context.Users.Add(userToAdd);

                UserRole addUserRoleRegular = new UserRole
                {
                    Name        = "Regular",
                    Description = "Creat pentru testare"
                };
                UserRole addUserRoleAdmin = new UserRole
                {
                    Name        = "AdminDeTest",
                    Description = "Creat pentru testare"
                };
                context.UserRole.Add(addUserRoleRegular);
                context.UserRole.Add(addUserRoleAdmin);
                context.SaveChanges();

                context.UserUserRole.Add(new UserUserRole
                {
                    User      = userToAdd,
                    UserRole  = addUserRoleRegular,
                    StartTime = DateTime.Parse("2019-06-13T00:00:00"),
                    EndTime   = null
                });
                context.SaveChanges();

                //sectiunea de schimbare valori invalidata de catre UserRoleValidator
                var uurpm = new UserUserRolePostModel
                {
                    UserId       = userToAdd.Id,
                    UserRoleName = "Admin"
                };
                var result1 = userUserRolesService.Create(uurpm);
                Assert.IsNotNull(result1);   //User role nu exista in baza de date dupa validare, ==> exista erori la validare

                //sectiunea de schimbare valori validata de catre UserRoleValidator
                var uurpm1 = new UserUserRolePostModel
                {
                    UserId       = userToAdd.Id,
                    UserRoleName = "AdminDeTest"
                };
                var result2 = userUserRolesService.Create(uurpm1);
                Assert.IsNull(result2);   //User role exista si se face upsert
            }
        }