コード例 #1
0
        public void AuthenticateShopOwner_ShopOwnerFoundInRepository_ReturnsCorrectAuthenticationToken()
        {
            // prepare
            string validEmail     = "*****@*****.**";
            string validPassword  = "******";
            string validFirstName = "Jalal";
            string validLastName  = "Uddin";

            var shopOwnerRepositoryMock = _kernel.GetMock <IMembershipRepository>();

            shopOwnerRepositoryMock.Setup(x => x.Get(validEmail)).Returns(new ShopOwner()
            {
                EmailAddress = validEmail,
                FirstName    = validFirstName,
                LastName     = validLastName
            });

            var repositoryFactoryMock = _kernel.GetMock <IMembershipRepositoryFactory>();

            repositoryFactoryMock.Setup(x => x.CreateMembershipRepository(UserTypeOptions.ShopOwner)).Returns(shopOwnerRepositoryMock.Object);
            IAuthenticator authenticator = _kernel.Get <IAuthenticator>();

            // act
            IAuthenticationToken token = authenticator.AuthenticateShopOwner(validEmail, validPassword);

            // assert
            Assert.IsNotNull(token);
            Assert.AreEqual(validEmail, token.EmailAddress);
            Assert.AreEqual(validFirstName, token.FirstName);
            Assert.AreEqual(validLastName, token.LastName);
            Assert.AreEqual(UserTypeOptions.ShopOwner, token.UserType);
        }
コード例 #2
0
        public void AuthenticateShopOwner_NullPassword_ThrowsException()
        {
            // prepare
            IAuthenticator authenticator = _kernel.Get <IAuthenticator>();
            string         validEmail    = "*****@*****.**";
            string         nullPassword  = string.Empty;

            // act
            IAuthenticationToken token = authenticator.AuthenticateShopOwner(validEmail, nullPassword);
        }
コード例 #3
0
        public void AuthenticateShopOwner_NullEmailAddress_ThrowsException()
        {
            // prepare
            IAuthenticator authenticator = _kernel.Get <IAuthenticator>();
            string         nullEmail     = null;
            string         validPassword = "******";

            // act
            IAuthenticationToken token = authenticator.AuthenticateShopOwner(nullEmail, validPassword);
        }
コード例 #4
0
        public void AuthenticateShopOwner_ValidEmailAddressAndPassword_ReturnsValidAuthenticationToken()
        {
            // prepare
            IAuthenticator authenticator = _kernel.Get <IAuthenticator>();
            string         validEmail    = "*****@*****.**";
            string         validPassword = "******";

            // act
            IAuthenticationToken token = authenticator.AuthenticateShopOwner(validEmail, validPassword);

            // assert
            Assert.IsNotNull(token);
            Assert.AreEqual(validEmail, token.EmailAddress);
        }
コード例 #5
0
        public void AuthenticateShopOwner_ShopOwnerNotFoundInRepository_ReturnsNull()
        {
            // prepare
            string    nonExistingUserEmail = "*****@*****.**";
            string    validPassword        = "******";
            ShopOwner shopOwner            = null;

            var shopOwnerRepositoryMock = _kernel.GetMock <IMembershipRepository>();

            shopOwnerRepositoryMock.Setup(x => x.Get(nonExistingUserEmail)).Returns(shopOwner);

            var repositoryFactoryMock = _kernel.GetMock <IMembershipRepositoryFactory>();

            repositoryFactoryMock.Setup(x => x.CreateMembershipRepository(UserTypeOptions.ShopOwner)).Returns(shopOwnerRepositoryMock.Object);
            IAuthenticator authenticator = _kernel.Get <IAuthenticator>();

            // act
            IAuthenticationToken token = authenticator.AuthenticateShopOwner(nonExistingUserEmail, validPassword);

            // assert
            Assert.IsNull(token);
        }