public void CheckValidationRules_ReturnsMultipleErrorMessages()
        {
            //Arrange
            var    falsePredicate1 = PredicateBuilder.False <object>();
            var    falsePredicate2 = PredicateBuilder.False <object>();
            var    truePredicate   = PredicateBuilder.True <object>();
            string errMsg1         = "Predicate1 returned false";
            string errMsg2         = "Predicate2 returned false";
            string errMsg3         = "True predicate returned false";

            valEngine.AddValidation(falsePredicate1, errMsg1);
            valEngine.AddValidation(falsePredicate2, errMsg2);
            valEngine.AddValidation(truePredicate, errMsg3);

            object o = new object();

            //Act
            var errors = valEngine.Validate(o);

            //Assert
            Assert.IsTrue(errors.Contains(errMsg1) && errors.Contains(errMsg2));
        }