Given_ValidatorWhichIsValidatingProperty_When_ValidatingWithNeededPassingValidator_Then_ValidationPass()
        {
            // Arrange
            var customerValidator = new CustomerValidator();

            // Act & assert
            AssertExtension.NotThrows(() => customerValidator.ShouldHaveRules(x => x.Name, new FakeValidatorVerifier()));
        }
        Given_ValidatorWhichIsValidatingProperty_When_ValidatingWith1NeededFailingValidator_Then_ValidationFail()
        {
            // Arrange
            var customerValidator = new CustomerValidator();

            // Act & assert
            Assert.Throws <XunitException>(
                () => customerValidator.ShouldHaveRules(x => x.Name, new FakeValidatorVerifier(true)));
        }
        public void Given_ValidatorWhichIsValidatingProperty_When_ValidatingWith0NeededValidator_Then_ValidationFail()
        {
            // Arrange
            var customerValidator = new CustomerValidator();

            // Act & assert
            AssertExtension.Throws <XunitException>(() => customerValidator.ShouldHaveRules(x => x.Name),
                                                    "(number of rules for property)");
        }