public void NoSequencesUsedBeforeIteration() { var first = new ThrowingEnumerable(); var second = new ThrowingEnumerable(); var query = first.Union(second); using (query.GetEnumerator()) { } }
public void NoSequencesUsedBeforeIteration() { var first = new ThrowingEnumerable(); var second = new ThrowingEnumerable(); // No exceptions! var query = first.Union(second); // Still no exceptions... we're not calling MoveNext. using (var iterator = query.GetEnumerator()) { } }
public void FirstSequenceIsNotUsedUntilQueryIsIterated() { var first = new ThrowingEnumerable(); int[] second = { 2 }; var query = first.Union(second); using (var iterator = query.GetEnumerator()) { // Still no exception... until we call MoveNext Assert.Throws<InvalidOperationException>(() => iterator.MoveNext()); } }
public void FirstSequenceIsNotUsedUntilQueryIsIterated() { var first = new ThrowingEnumerable(); int[] second = { 2 }; var query = first.Union(second); using (var iterator = query.GetEnumerator()) { // Still no exception... until we call MoveNext Assert.Throws <InvalidOperationException>(() => iterator.MoveNext()); } }