static void Main(string[] args) { var predicates = new List <IPredicate> { Predicates.Field <Car>(f => f.Type, Operator.Eq, "Sedan"), Predicates.Field <Car>(f => f.Type, Operator.Eq, "Hatchback"), }; var testdata = Car.PrepareTestData(); var expression = PredicateParser <Car> .ParseOr(predicates).Compile(); var result = testdata.Where(expression); }
public void ParseOr_CollectionOfCars_TwoTypeOfCars() { //Arrange var testdata = Car.PrepareTestData(); var predicates = new List <IPredicate> { Predicates.Field <Car>(f => f.Type, Operator.Eq, "Sedan"), Predicates.Field <Car>(f => f.Type, Operator.Eq, "Hatchback"), }; //Act var expression = PredicateParser <Car> .ParseOr(predicates).Compile(); var result = testdata.Where(expression); var typesNumber = result.GroupBy(b => b.Type).Count(); //Assert Assert.AreEqual(2, typesNumber); }