public void GetEnumerator_WithPredicateThatReturnsTrueForOneItemThatIsRepeatedInInputCollection_ReturnsAllItemsUpToAndIncludingThatFirstItem() { var input = new[] { 1, 2, 3, 3, 3, 3, 3, 4, 5, 6 }; var predicate = new Predicate <int>(i => i == 3); var output = new TakeUntilEnumerable <int>(input, predicate).ToList(); CollectionAssert.AreEqual(Enumerable.Range(1, 3), output); }
public void GetEnumerator_WithPredicateThatReturnsFalseForAllItems_ReturnsWholeCollection() { var input = Enumerable.Range(1, 100); var predicate = new Predicate <int>(s => false); var output = new TakeUntilEnumerable <int>(input, predicate).ToList(); CollectionAssert.AreEqual(input, output); }
public void GetEnumerator_WithPredicateThatReturnsTrueForOneItem_ReturnsAllItemsUpToAndIncludingThatItem() { var input = Enumerable.Range(1, 100); var predicate = new Predicate <int>(i => i == 42); var output = new TakeUntilEnumerable <int>(input, predicate).ToList(); CollectionAssert.AreEqual(Enumerable.Range(1, 42), output); }
public void GetEnumerator_WithEmptyCollection_ReturnsEmptyCollection() { var input = new List <string>(); var predicate = new Predicate <string>(s => true); var output = new TakeUntilEnumerable <string>(input, predicate).ToList(); CollectionAssert.IsEmpty(output); }