private static string GeneratePasswordHash(User user, IBubelSoftUserPassword bubelSoftUserPassword) { var userLogInInfo = new UserLogInInfo { Email = user.Email, Password = "******" }; return(bubelSoftUserPassword.Hash(userLogInInfo)); }
public void Verify_ReturnTrue_WhenPasswordsAreMatched() { var userLogin = new UserLogInInfo { Email = "*****@*****.**", Password = "******" }; var bubelSoftUserPassword = new BubelSoftUserPassword(); var result = bubelSoftUserPassword.Verify(userLogin, bubelSoftUserPassword.Hash(userLogin)); Assert.That(result, Is.True, "Password should match"); }
public IActionResult LogIn([FromBody] UserLogInInfo userLogin) { var(user, passwordHash) = _userRepository.GetForLogIn(userLogin.Email); if (user == null) { return(BadRequest("User not found")); } if (!_bubelSoftUserPassword.Verify(userLogin, passwordHash)) { return(BadRequest("Password is invalid")); } return(Ok(_bubelSoftJwtToken.CreateFor(user))); }
public void Verify_ReturnTrue_WhenPasswordsAreNotMatched() { var userLogin = new UserLogInInfo { Email = "*****@*****.**", Password = "******" }; var bubelSoftUserPassword = new BubelSoftUserPassword(); var passwordHash = bubelSoftUserPassword.Hash(userLogin); userLogin.Password = "******"; var result = bubelSoftUserPassword.Verify(userLogin, passwordHash); Assert.That(result, Is.False, "Password should not match"); }
private UserLogInInfo StubLogInRepository(User user, bool goodPassword) { const string passwordHash = "passwordHash"; _userRepository.GetForLogIn(user.Email).Returns((user, passwordHash)); var userLogInInfo = new UserLogInInfo { Email = user.Email, Password = passwordHash }; _bubelSoftPassword.Verify(Arg.Any <UserLogInInfo>(), Arg.Any <string>()).Returns(goodPassword); return(userLogInInfo); }
public IActionResult Register([FromBody] UserLogInInfo userInfo) { //var newId = 0; //var userId = new UserId(0); //var user = _userRepository.Get(userId); //if (user == null) // return BadRequest(); //var passwordHasher = new PasswordHasher<UserLogInInfo>(); //var userLogInInfo = new UserLogInInfo //{ // Email = userInfo.Email, // Password = userInfo.Password, // Id = newId //}; //var passwordHash = passwordHasher.HashPassword(userLogInInfo, userLogInInfo.Password); //var userDomain = new User( // userInfo.Email, // "userInfo.FirstName", // "userInfo.LastName", // UserCompanyRole.Admin, // "userInfo.Email", // "userInfo.PhoneNumber"); //userDomain.From(user.CompanyId); //userDomain.SetId(userId); //foreach (var userRole in user.UserRoles) //{ // userDomain.AddRole(userRole.BuildingId, userRole.UserBuildingRole); //} //_userRepository.Save(userDomain, passwordHash); return(Ok()); }