public void AddingAddress_ServiceException()
        {
            var alwaysExceptionVerifier = new Moq.Mock <IAddressVerifier>();

            alwaysExceptionVerifier.Setup(x => x.Verify(_address)).Returns(() => { throw new WebException("500 Internal Server Error"); });

            var repo = new InMemoryRepository(alwaysExceptionVerifier.Object);

            repo.AddAddress(_address);

            Assert.Single(repo.ShippingAddresses);
        }
        public void AddingAddress_AddressNotValid()
        {
            var alwaysNotExistingVerifier = new Moq.Mock <IAddressVerifier>();

            alwaysNotExistingVerifier.Setup(x => x.Verify(_address)).Returns(() => { return(false); });

            var repo = new InMemoryRepository(alwaysNotExistingVerifier.Object);

            repo.AddAddress(_address);

            Assert.Single(repo.ShippingAddresses);
            Assert.False(repo.ShippingAddresses.First().Existed);
        }