public void Login_ShouldReturnJWT_When_UserFound() { // Arrange var credentialEntities = new List <CredentialEntity> { new CredentialEntityBuilder().SetId(1).SetEmail("*****@*****.**").SetPassword("42818AAC3AEFB82B8A9E136A40657A0DD8582A0C6C544755806BC20E9D32D4E3").SetDummyRole("Gebruikert").Create(), }; var mapperMock = new Mock <ICredentialDataMapper>(MockBehavior.Strict); mapperMock.Setup(x => x.Find(It.IsAny <Expression <Func <CredentialEntity, bool> > >())).Returns(credentialEntities); var listener = new AccountListener(mapperMock.Object, new LoggerFactory()); var credentials = new Credential { Email = "*****@*****.**", Password = "******" }; // Act var result = listener.Login(new LoginCommand(credentials, "")); // Assert mapperMock.VerifyAll(); Assert.IsTrue(result.Length > 0); }
public void Login_ShouldThrow_DatabaseException_OnError() { // Arrange var mapperMock = new Mock <ICredentialDataMapper>(MockBehavior.Strict); mapperMock.Setup(x => x.Find(It.IsAny <Expression <Func <CredentialEntity, bool> > >())).Throws <Exception>(); var listener = new AccountListener(mapperMock.Object, new LoggerFactory()); // Act Action act = () => { listener.Login(new LoginCommand(new Credential(), "")); }; // Assert var exception = Assert.ThrowsException <DatabaseException>(act); Assert.AreEqual("Something unexpected happened while searching through the database", exception.Message); mapperMock.VerifyAll(); }
public void Login_ShouldReturnEmptyJWT_When_NoUserFound() { // Arrange var credentialEntities = new List <CredentialEntity>(); var mapperMock = new Mock <ICredentialDataMapper>(MockBehavior.Strict); mapperMock.Setup(x => x.Find(It.IsAny <Expression <Func <CredentialEntity, bool> > >())).Returns(credentialEntities); var listener = new AccountListener(mapperMock.Object, new LoggerFactory()); var credentials = new Credential { Email = "*****@*****.**", Password = "******" }; // Act var result = listener.Login(new LoginCommand(credentials, "")); // Assert mapperMock.VerifyAll(); Assert.IsTrue(result.Length == 0); }