public void Specification_filters_out_non_matching_objects_from_ienumerable() { var testObjects = new List<TestClass>(); testObjects.Add(new TestClass() { Salary = 3000 }); testObjects.Add(new TestClass() { Salary = 5000 }); testObjects.Add(new TestClass() { Salary = 6000 }); var specification = new GenericSpecification<TestClass>(t => t.Salary > 4000); var filteredQuery = specification.Filter(testObjects); AsserThatAllTestObjectHasSalaryGreaterThan(filteredQuery, 4000); }