Beispiel #1
0
        public void RegisterFirstValidUser()
        {
            var userMockRepo    = new UserMockRepo(new List <User>());
            var articleMockRepo = new ArticleMockRepo();
            var cartMockRepo    = new CartMockRepo();
            var userController  = new UserController(_loggerMock.Object, articleMockRepo._articleRepo, userMockRepo._mockRepo, cartMockRepo._mockRepo, null);

            var user = new DTOUserEdition
            {
                UserName = "******",
                Email    = "*****@*****.**",
                Password = "******",
                Name     = "User Name",
                Address  = "1 Address St.",
                Gender   = "man"
            };

            var preCount = userMockRepo._usersMockList.Count;

            userController.Register(user).Wait();

            var postCount = userMockRepo._usersMockList.Count;

            Assert.AreEqual(preCount + 1, postCount);
        }
        public async Task <ActionResult> Register(DTOUserEdition userModel)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    if (_userRepo.GetUserByEmail(userModel.Email) != null)
                    {
                        return(BadRequest(userModel));
                    }
                    if (_userRepo.GetUserByUserName(userModel.UserName) != null)
                    {
                        return(BadRequest(userModel));
                    }
                    userModel.Password = HashPassword(userModel.Password);
                    var newUser = DtoUserEditionToDtoUser(userModel);
                    newUser.NbNotes = 0;
                    var result = await _userRepo.Insert(newUser);

                    if (result != null)
                    {
                        return(View("Success"));
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.LogError("CONTROLLER USER -- Register() -- Error : ", ex);
                return(BadRequest());
            }
            return(View());
        }
        /// <summary>
        /// Converter
        /// </summary>
        /// <param name="userModel"></param>
        /// <returns></returns>
        public static DTOUser DtoUserEditionToDtoUser(DTOUserEdition userModel)
        {
            var user = new DTOUser();

            user.Id       = userModel.Id;
            user.Email    = userModel.Email;
            user.Address  = userModel.Address;
            user.Name     = userModel.Name;
            user.Password = userModel.Password;
            user.UserName = userModel.UserName;
            user.Gender   = userModel.Gender;
            user.Note     = userModel.Note;
            user.NbNotes  = userModel.NbNotes;

            return(user);
        }
        public async Task <ActionResult> EditUserInfos(DTOUserEdition newUserInfos)
        {
            try
            {
                var userEmail      = HttpContext.User.Identity.Name;
                var userToReInsert = _userRepo.GetUserByEmail(userEmail);
                userToReInsert.Name     = newUserInfos.Name;
                userToReInsert.Email    = newUserInfos.Email;
                userToReInsert.UserName = newUserInfos.UserName;
                userToReInsert.Gender   = newUserInfos.Gender;
                userToReInsert.Address  = newUserInfos.Address;
                userToReInsert.Password = HashPassword(newUserInfos.Password);

                var userToUpdate = _userRepo.Update(userToReInsert);
            }
            catch (Exception ex)
            {
                _logger.LogError("CONTROLLER USER -- EditUserInfos() -- Error : ", ex);
            }
            await HttpContext.SignOutAsync();

            return(Redirect("/Home"));
        }