Example #1
0
        public void Handler_ReturnsNonNullEmailAddress_WhenFound_ById_AndIsVerifiedMatches(
            bool?queryIsVerified, bool entityIsVerified)
        {
            var emailAddressId = FakeData.Id();
            var emailAddress   = new ProxiedEmailAddress(emailAddressId)
            {
                IsVerified = entityIsVerified,
            };
            var data = new[] { emailAddress }.AsQueryable();
            var query = new EmailAddressBy(emailAddressId)
            {
                IsVerified = queryIsVerified,
            };
            var dbSet     = new Mock <DbSet <EmailAddress> >(MockBehavior.Strict).SetupDataAsync(data);
            var entities  = new Mock <IReadEntities>(MockBehavior.Strict);
            var entitySet = new EntitySet <EmailAddress>(dbSet.Object, entities.Object);

            entities.Setup(x => x.Query <EmailAddress>()).Returns(entitySet);
            var handler = new HandleEmailAddressByQuery(entities.Object);

            EmailAddress result = handler.Handle(query).Result;

            result.ShouldNotBeNull();
            result.ShouldEqual(data.Single());
            entities.Verify(x => x.Query <EmailAddress>(), Times.Once);
        }
Example #2
0
        public void Handler_ReturnsNullEmailAddress_WhenFound_ByValue_ButIsVerifiedDoesNotMatch(bool isVerified)
        {
            var emailAddressValue = FakeData.Email();
            var emailAddress      = new EmailAddress
            {
                Value      = emailAddressValue,
                IsVerified = !isVerified,
            };
            var data = new[] { emailAddress }.AsQueryable();
            var query = new EmailAddressBy(emailAddressValue)
            {
                IsVerified = isVerified,
            };
            var dbSet     = new Mock <DbSet <EmailAddress> >(MockBehavior.Strict).SetupDataAsync(data);
            var entities  = new Mock <IReadEntities>(MockBehavior.Strict);
            var entitySet = new EntitySet <EmailAddress>(dbSet.Object, entities.Object);

            entities.Setup(x => x.Query <EmailAddress>()).Returns(entitySet);
            var handler = new HandleEmailAddressByQuery(entities.Object);

            EmailAddress result = handler.Handle(query).Result;

            result.ShouldBeNull();
            entities.Verify(x => x.Query <EmailAddress>(), Times.Once);
        }
Example #3
0
        public void Handler_ReturnsNonNullEmailAddress_WhenFound_ByClaim_AndIsVerified_IsEqual(
            bool?isQueryVerified, bool isEntityVerified)
        {
            var emailAddressValue = FakeData.Email();
            var claim             = new Claim(ClaimTypes.Email, emailAddressValue);
            var emailAddress      = new EmailAddress
            {
                Value      = emailAddressValue,
                IsVerified = isEntityVerified,
            };
            var data = new[] { emailAddress }.AsQueryable();
            var query = new EmailAddressBy(claim)
            {
                IsVerified = isQueryVerified,
            };
            var dbSet     = new Mock <DbSet <EmailAddress> >(MockBehavior.Strict).SetupDataAsync(data);
            var entities  = new Mock <IReadEntities>(MockBehavior.Strict);
            var entitySet = new EntitySet <EmailAddress>(dbSet.Object, entities.Object);

            entities.Setup(x => x.Query <EmailAddress>()).Returns(entitySet);
            var handler = new HandleEmailAddressByQuery(entities.Object);

            EmailAddress result = handler.Handle(query).Result;

            result.ShouldNotBeNull();
            result.ShouldEqual(data.Single());
            entities.Verify(x => x.Query <EmailAddress>(), Times.Once);
        }
        public void Handler_ReturnsNullEmailAddress_WhenFound_ByClaim_ButIsVerifiedDoesNotMatch(bool isVerified)
        {
            var emailAddressValue = string.Format("{0}@domain.tld", Guid.NewGuid());
            var claim             = new Claim(ClaimTypes.Email, emailAddressValue);
            var emailAddress      = new EmailAddress
            {
                Value      = emailAddressValue,
                IsVerified = !isVerified,
            };
            var data = new[] { emailAddress }.AsQueryable();
            var query = new EmailAddressBy(claim)
            {
                IsVerified = isVerified,
            };
            var dbSet     = new Mock <DbSet <EmailAddress> >(MockBehavior.Strict).SetupDataAsync(data);
            var entities  = new Mock <IReadEntities>(MockBehavior.Strict);
            var entitySet = new EntitySet <EmailAddress>(dbSet.Object, entities.Object);

            entities.Setup(x => x.Query <EmailAddress>()).Returns(entitySet);
            var handler = new HandleEmailAddressByQuery(entities.Object);

            EmailAddress result = handler.Handle(query).Result;

            result.ShouldBeNull();
            entities.Verify(x => x.Query <EmailAddress>(), Times.Once);
        }
        public void Handler_ReturnsNonNullEmailAddress_WhenFound_ByValue_AndIsVerifiedMatches(
            bool?isQueryVerified, bool isEntityVerified)
        {
            var emailAddressValue = string.Format("{0}@domain.tld", Guid.NewGuid());
            var emailAddress      = new EmailAddress
            {
                Value      = emailAddressValue,
                IsVerified = isEntityVerified,
            };
            var data = new[] { emailAddress }.AsQueryable();
            var query = new EmailAddressBy(emailAddressValue)
            {
                IsVerified = isQueryVerified,
            };
            var dbSet     = new Mock <DbSet <EmailAddress> >(MockBehavior.Strict).SetupDataAsync(data);
            var entities  = new Mock <IReadEntities>(MockBehavior.Strict);
            var entitySet = new EntitySet <EmailAddress>(dbSet.Object, entities.Object);

            entities.Setup(x => x.Query <EmailAddress>()).Returns(entitySet);
            var handler = new HandleEmailAddressByQuery(entities.Object);

            EmailAddress result = handler.Handle(query).Result;

            result.ShouldNotBeNull();
            result.ShouldEqual(data.Single());
            entities.Verify(x => x.Query <EmailAddress>(), Times.Once);
        }
Example #6
0
        public void Handler_ReturnsNullEmailAddress_WhenNotFound_ById()
        {
            var emailAddressId = FakeData.Id();
            var data = new[] { new ProxiedEmailAddress(FakeData.Id(canNotBe: emailAddressId)) }.AsQueryable();
            var query     = new EmailAddressBy(emailAddressId);
            var dbSet     = new Mock <DbSet <EmailAddress> >(MockBehavior.Strict).SetupDataAsync(data);
            var entities  = new Mock <IReadEntities>(MockBehavior.Strict);
            var entitySet = new EntitySet <EmailAddress>(dbSet.Object, entities.Object);

            entities.Setup(x => x.Query <EmailAddress>()).Returns(entitySet);
            var handler = new HandleEmailAddressByQuery(entities.Object);

            EmailAddress result = handler.Handle(query).Result;

            result.ShouldBeNull();
            entities.Verify(x => x.Query <EmailAddress>(), Times.Once);
        }
        public void Handler_ReturnsNullEmailAddress_WhenNotFound_ByValue()
        {
            var emailAddressValue = string.Format("{0}@domain.tld", Guid.NewGuid());
            var emailAddress      = new EmailAddress {
                Value = string.Format("{0}@domain.tld", Guid.NewGuid())
            };
            var data = new[] { emailAddress }.AsQueryable();
            var query     = new EmailAddressBy(emailAddressValue);
            var dbSet     = new Mock <DbSet <EmailAddress> >(MockBehavior.Strict).SetupDataAsync(data);
            var entities  = new Mock <IReadEntities>(MockBehavior.Strict);
            var entitySet = new EntitySet <EmailAddress>(dbSet.Object, entities.Object);

            entities.Setup(x => x.Query <EmailAddress>()).Returns(entitySet);
            var handler = new HandleEmailAddressByQuery(entities.Object);

            EmailAddress result = handler.Handle(query).Result;

            result.ShouldBeNull();
            entities.Verify(x => x.Query <EmailAddress>(), Times.Once);
        }
Example #8
0
        public void Handler_ReturnsNullEmailAddress_WhenNotFound_ByClaim()
        {
            var emailAddressValue = FakeData.Email();
            var claim             = new Claim(ClaimTypes.Email, emailAddressValue);
            var emailAddress      = new EmailAddress {
                Value = FakeData.Email()
            };
            var data = new[] { emailAddress }.AsQueryable();
            var query     = new EmailAddressBy(claim);
            var dbSet     = new Mock <DbSet <EmailAddress> >(MockBehavior.Strict).SetupDataAsync(data);
            var entities  = new Mock <IReadEntities>(MockBehavior.Strict);
            var entitySet = new EntitySet <EmailAddress>(dbSet.Object, entities.Object);

            entities.Setup(x => x.Query <EmailAddress>()).Returns(entitySet);
            var handler = new HandleEmailAddressByQuery(entities.Object);

            EmailAddress result = handler.Handle(query).Result;

            result.ShouldBeNull();
            entities.Verify(x => x.Query <EmailAddress>(), Times.Once);
        }