public async Task Jwt_Contains_CorrectId() { AccountCommandListener listener = new AccountCommandListener(_signInManager, _userManager); var registerCommand = new RegistreerGebruikerCommand() { NewUser = new Account() { UserName = "******", Password = "******", Role = "Klant" } }; // maak user aan string id = await listener.RegistreerGebruiker(registerCommand); var loginCommand = new LogGebruikerInCommand() { Credentials = new Credentials() { UserName = "******", Password = "******" } }; var result = await listener.LogGebruikerIn(loginCommand); var jwtHandler = new JwtSecurityTokenHandler(); bool validToken = jwtHandler.CanReadToken(result.Token); Assert.IsTrue(validToken); var token = jwtHandler.ReadJwtToken(result.Token); var idFromClaim = token.Claims.Where(c => c.Type == "UserId" && c.Value == id).SingleOrDefault(); Assert.AreEqual(id, idFromClaim.Value); }
public async Task Jwt_Contains_CorrectRoles() { AccountCommandListener listener = new AccountCommandListener(_signInManager, _userManager); var registerCommand = new RegistreerGebruikerCommand() { NewUser = new Account() { UserName = "******", Password = "******", Role = "Klant" } }; // maak user aan await listener.RegistreerGebruiker(registerCommand); var loginCommand = new LogGebruikerInCommand() { Credentials = new Credentials() { UserName = "******", Password = "******" } }; var result = await listener.LogGebruikerIn(loginCommand); var jwtHandler = new JwtSecurityTokenHandler(); bool validToken = jwtHandler.CanReadToken(result.Token); Assert.IsTrue(validToken); var token = jwtHandler.ReadJwtToken(result.Token); var role = token.Claims.Where(c => c.Type == ClaimTypes.Role && c.Value == "Klant"); Assert.IsNotNull(role); }
public async Task ThrowsPasswordException_WhenPassword_IsInvalid() { AccountCommandListener listener = new AccountCommandListener(_signInManager, _userManager); var command = new RegistreerGebruikerCommand() { NewUser = new Account() { UserName = "******", Password = "******", Role = "Klant" } }; await Assert.ThrowsExceptionAsync<PasswordException>(async () => { await listener.RegistreerGebruiker(command); }); }
public async Task NewUser_CanBe_Registered() { AccountCommandListener listener = new AccountCommandListener(_signInManager, _userManager); var command = new RegistreerGebruikerCommand() { NewUser = new Account() { UserName = "******", Password = "******", Role = "Klant" } }; var result = await listener.RegistreerGebruiker(command); Assert.IsNotNull(result); }
public async Task ThrowsException_When_CantDeleteUser() { AccountCommandListener listener = new AccountCommandListener(_signInManager, _userManager); var command = new RegistreerGebruikerCommand() { NewUser = new Account() { UserName = "******", Password = "******", Role = "Klant" } }; // maak user aan string id = await listener.RegistreerGebruiker(command); await Assert.ThrowsExceptionAsync<UserDeletionFailedException>(async () => { await listener.VerwijderGebruiker(new VerwijderGebruikerCommand() { Id = "wrongId" }); }); }
public async Task CanSuccesfully_Delete_AnUser() { AccountCommandListener listener = new AccountCommandListener(_signInManager, _userManager); var command = new RegistreerGebruikerCommand() { NewUser = new Account() { UserName = "******", Password = "******", Role = "Klant" } }; // maak user aan string id = await listener.RegistreerGebruiker(command); var result = await listener.VerwijderGebruiker(new VerwijderGebruikerCommand() { Id = id }); Assert.AreEqual(id, result); }
public async Task ThrowsUdernameAlreadyExistsException_WhenUsernameAlreadyExists() { AccountCommandListener listener = new AccountCommandListener(_signInManager, _userManager); var command = new RegistreerGebruikerCommand() { NewUser = new Account() { UserName = "******", Password = "******", Role = "Klant" } }; // eerste users await listener.RegistreerGebruiker(command); // tweede dubbele user await Assert.ThrowsExceptionAsync<UsernameAlreadyExistsException>(async () => { await listener.RegistreerGebruiker(command); }); }
public async Task ThrowException_WhenWrongPassword() { AccountCommandListener listener = new AccountCommandListener(_signInManager, _userManager); var registerCommand = new RegistreerGebruikerCommand() { NewUser = new Account() { UserName = "******", Password = "******", Role = "Klant" } }; // maak user aan await listener.RegistreerGebruiker(registerCommand); var loginCommand = new LogGebruikerInCommand() { Credentials = new Credentials() { UserName = "******", Password = "******" } }; await Assert.ThrowsExceptionAsync<LoginFailedException>(async () => { await listener.LogGebruikerIn(loginCommand); }); }
public async Task GeneratesJwt_WhenSuccesfullLogin() { AccountCommandListener listener = new AccountCommandListener(_signInManager, _userManager); var registerCommand = new RegistreerGebruikerCommand() { NewUser = new Account() { UserName = "******", Password = "******", Role = "Klant" } }; // maak user aan await listener.RegistreerGebruiker(registerCommand); var loginCommand = new LogGebruikerInCommand() { Credentials = new Credentials() { UserName = "******", Password = "******" } }; var result = await listener.LogGebruikerIn(loginCommand); Assert.IsNotNull(result); }