public void WhereWhere_List_ReturnsExpectedValues()
{
List<int> source = new List<int> { 1, 2, 3, 4, 5 };
Func<int, bool> evenPredicate = (value) => value % 2 == 0;
IEnumerable<int> result = source.Where(evenPredicate).Where(evenPredicate);
Assert.Equal(2, result.Count());
Assert.Equal(2, result.ElementAt(0));
Assert.Equal(4, result.ElementAt(1));
}