public async void EmailAddress_Create_null()
        {
            Mock <IProductReviewRepository> productReviewRepository = new Mock <IProductReviewRepository>();

            productReviewRepository.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult(new ProductReview()));

            var validator = new ApiProductReviewRequestModelValidator(productReviewRepository.Object);
            await validator.ValidateCreateAsync(new ApiProductReviewRequestModel());

            validator.ShouldHaveValidationErrorFor(x => x.EmailAddress, null as string);
        }
        public async void EmailAddress_Update_length()
        {
            Mock <IProductReviewRepository> productReviewRepository = new Mock <IProductReviewRepository>();

            productReviewRepository.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult(new ProductReview()));

            var validator = new ApiProductReviewRequestModelValidator(productReviewRepository.Object);
            await validator.ValidateUpdateAsync(default(int), new ApiProductReviewRequestModel());

            validator.ShouldHaveValidationErrorFor(x => x.EmailAddress, new string('A', 51));
        }
        public async void Comment_Create_length()
        {
            Mock <IProductReviewRepository> productReviewRepository = new Mock <IProductReviewRepository>();

            productReviewRepository.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult(new ProductReview()));

            var validator = new ApiProductReviewRequestModelValidator(productReviewRepository.Object);
            await validator.ValidateCreateAsync(new ApiProductReviewRequestModel());

            validator.ShouldHaveValidationErrorFor(x => x.Comment, new string('A', 3851));
        }