public void ValidateWithCorrectXmlShouldReturnTrueAndGiveNoValidationMessages()
            {
                var           validTestCouple = new TestGenerator.ValidTestCouple();
                XmlValidator  validator       = new XmlValidatorTestImplementation();
                List <string> messagesList;

                var validateResult = validator.Validate(validTestCouple.Input(), out messagesList);

                Assert.True(validateResult);
                Assert.Equal(0, messagesList.Count);
            }
            public void MultipleValidateShouldNotHoldValidationState()
            {
                XmlValidator validator = new XmlValidatorTestImplementation();

                var           invalidContentTestCouple = new TestGenerator.InvalidContentTestCouple();
                List <string> messagesList;
                var           validateResult = validator.Validate(invalidContentTestCouple.Input(), out messagesList);

                Assert.False(validateResult);
                Assert.True(invalidContentTestCouple.ExpectedValidationMessages.Contains(messagesList.ToString()));

                var validTestCouple = new TestGenerator.ValidTestCouple();

                validateResult = validator.Validate(validTestCouple.Input(), out messagesList);
                Assert.True(validateResult);
                Assert.Equal(0, messagesList.Count);

                var invalidSyntaxTestCouple = new TestGenerator.InvalidSyntaxTestCouple();

                validateResult = validator.Validate(invalidSyntaxTestCouple.Input(), out messagesList);
                Assert.False(validateResult);
                Assert.True(invalidSyntaxTestCouple.ExpectedValidationMessages.Contains(messagesList.ToString()));
            }