public void IterateProducts_Lazy_Loading_AllProductExist() { //Lazy loading will not iterate list until for each is hit IEnumerable <Product> productList = IterateProducts.GetIteratorPatternListOfProducts(_products); foreach (var product in productList) { CollectionAssert.Contains(productList.Select(p => p.Name).ToArray(), product.Name); } }
public void IterateProducts_Greedy_Loading_AllProductExist() { //Because we use ToList<> our list is loaded Immediately IEnumerable <Product> productList = IterateProducts.GetIteratorPatternListOfProducts(_products).ToList(); foreach (var product in productList) { CollectionAssert.Contains(productList.Select(p => p.Name).ToArray(), product.Name); } }