public void Given_CorrectValidator_When_Verifying_Then_ValidationPass()
        {
            // Arrange
            var exactValidatorVerifier = new ExactLengthValidator(10);
            var verifier = new ExactLengthValidatorVerifier(10);

            // Act & Assert
            AssertExtension.NotThrows(() => verifier.Verify(exactValidatorVerifier));
        }
        public void Given_DifferentValidatorType_When_Verifying_Then_ValidationMustFail()
        {
            // Arrange
            var otherValidator = new FakePropertyValidator();
            var verifier       = new ExactLengthValidatorVerifier(10);

            // Act & Assert
            AssertExtension.Throws <XunitException>(() => verifier.Verify(otherValidator), "(wrong type)");
        }
        public void Given_CorrectValidatorWithDifferentValue_When_Verifying_Then_ValidationFail()
        {
            // Arrange
            var exactValidatorVerifier = new ExactLengthValidator(10);
            var verifier = new ExactLengthValidatorVerifier(1);

            // Act & Assert
            AssertExtension.Throws <XunitException>(() => verifier.Verify(exactValidatorVerifier),
                                                    "(Min property)");
        }