public void CanUserUpdatePasswordTest() { IMateDAO <Mate> MateDAO = new MateDAO(_connection); Mate testMate = new Mate(); testMate.FirstName = "Jessica"; testMate.LastName = "Coelho"; testMate.UserName = "******"; testMate.Password = "******"; testMate.Email = "*****@*****.**"; testMate.Description = "Lorem Ipsum is simply dummy text of the printing and typesetting industry."; testMate.Address = "Ordem"; testMate.Categories = new[] { Categories.FURNITURE_ASSEMBLE, Categories.TRANSPORTATION }; testMate.Rank = Ranks.MATE; testMate.Range = 20; Mate returned = MateDAO.Create(testMate); UserDAO userDAO = new UserDAO(_connection); PasswordUpdateModel newPass = new PasswordUpdateModel(); newPass.Password = "******"; newPass.OldPassword = "******"; Assert.True(userDAO.UpdatePassword(newPass, returned.Id)); _fixture.Dispose(); }
public void CanUserRecoverPasswordTest() { IMateDAO <Mate> MateDAO = new MateDAO(_connection); Mate testMate = new Mate(); testMate.FirstName = "Samuel"; testMate.LastName = "Cunha"; testMate.UserName = "******"; testMate.Password = "******"; testMate.Email = "*****@*****.**"; testMate.Description = "Quero recuperar a pass"; testMate.Address = "Aparecida"; testMate.Categories = new[] { Categories.GARDENING }; testMate.Rank = Ranks.MATE; testMate.Range = 10; Mate returned = MateDAO.Create(testMate); var tokenHandler = new JwtSecurityTokenHandler(); var key = Encoding.ASCII.GetBytes("RQj!O9+Sq|D8XjYa|}kgnk|}ZaQUso)EMF48Fx1~0n~^~%]n|O{NqH(&5RqXbx7"); var tokenDescriptor = new SecurityTokenDescriptor { Subject = new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.Email, testMate.Email.ToString()) }), Expires = DateTime.UtcNow.AddMinutes(10), SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature) }; var token = tokenHandler.CreateToken(tokenDescriptor); var tokenString = tokenHandler.WriteToken(token); String auxResetToken = tokenString; PasswordOperations.NewPasswordRequest("*****@*****.**", auxResetToken); LoginDAO loginDAO = new LoginDAO(_connection); RecoverPasswordModel recoverPassword = new RecoverPasswordModel(); recoverPassword.Email = "*****@*****.**"; recoverPassword.Password = "******"; recoverPassword.ConfirmPassword = "******"; recoverPassword.Token = tokenString; Assert.True(loginDAO.RecoverPassword(recoverPassword, returned.Email)); _fixture.Dispose(); }