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")); }