Пример #1
0
        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);
        }
Пример #2
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();
        }
Пример #3
0
        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);
        }