public async Task Awaiting_Result_Iterates_Source() { var target = new ThrowingAsyncEnumerable <int>(); await Assert.ThrowsAsync <NotImplementedException>(async() => { await target.SingleOrDefault(); }); }
public async Task Awaiting_Result_Iterates_Source_Task_Predicate() { var target = new ThrowingAsyncEnumerable <bool>(); await Assert.ThrowsAsync <NotImplementedException>(async() => { await target.SingleOrDefault(QuickFunctions <bool> .IdentityTasked); }); }
public void Eagerly_Validates_Source() { var target = new ThrowingAsyncEnumerable <int>(); Assert.Throws <ArgumentNullException>(() => { var iter = AsyncEnumerable.Cast <int, object>((IAsyncEnumerable <int>)null); }); }
public async Task Awaiting_Result_Starts_Iteration_No_Predicate() { var target = new ThrowingAsyncEnumerable <long>(); await Assert.ThrowsAsync <NotImplementedException>(async() => { await target.LongCount(); }); }
public async Task Awaiting_Result_Starts_Iteration_Plain_Predicate() { var target = new ThrowingAsyncEnumerable <bool>(); await Assert.ThrowsAsync <NotImplementedException>(async() => { await target.LongCount(QuickFunctions <bool> .Identity); }); }
public void Eager_Validation_Task() { var target = new ThrowingAsyncEnumerable <int>(); Assert.Throws <ArgumentNullException>(() => { var iter = AsyncEnumerable.Append(target, (Task <int>)null); }); }
public void Eager_Validation_Source_ValueTaskPredicate() { var target = new ThrowingAsyncEnumerable <bool>(); Assert.Throws <ArgumentNullException>(() => { var noIterate = AsyncEnumerable.Any((IAsyncEnumerable <bool>)null, QuickFunctions <bool> .IdentityWrapped); }); }
public async Task Awaiting_Task_Forces_Iteration() { var target = new ThrowingAsyncEnumerable <bool>(); await Assert.ThrowsAsync <NotImplementedException>(async() => { var all = await target.Any(QuickFunctions <bool> .Identity); }); }
public void Eager_Validation_Predicate_ValueTaskPredicate() { var target = new ThrowingAsyncEnumerable <bool>(); Assert.Throws <ArgumentNullException>(() => { var noIterate = AsyncEnumerable.Any(target, (Func <bool, ValueTask <bool> >)null); }); }
public void Eager_Validation_Source_NoPredicate() { var target = new ThrowingAsyncEnumerable <bool>(); Assert.Throws <ArgumentNullException>(() => { var noIterate = AsyncEnumerable.Any((IAsyncEnumerable <bool>)null); }); }
public async Task Awaiting_Causes_Iteration() { var target = new ThrowingAsyncEnumerable <int>(); await Assert.ThrowsAsync <NotImplementedException>(async() => { await using (var items = AsyncEnumerable.Cast <int, object>(target).GetAsyncEnumerator()) { await items.MoveNextAsync(); } }); }
public async Task Starting_Iteration_Iterates_Source() { var target = new ThrowingAsyncEnumerable <long>(); await Assert.ThrowsAsync <NotImplementedException>(async() => { await using (var iter = target.Distinct().GetAsyncEnumerator()) { await iter.MoveNextAsync(); } }); }
public async Task Starting_Iteration_Forces_Iteration() { var target = new ThrowingAsyncEnumerable <int>(); await Assert.ThrowsAsync <NotImplementedException>(async() => { await using (var iter = target.Append(0).GetAsyncEnumerator()) { await iter.MoveNextAsync(); } }); }
public async Task Starting_Iteration_Iterates_Source_Explicit() { var target = new ThrowingAsyncEnumerable <int>(); await Assert.ThrowsAsync <NotImplementedException>(async() => { await using (var iter = target.DefaultIfEmpty(19).GetAsyncEnumerator()) { await iter.MoveNextAsync(); } }); }
public async Task Starting_Iteration_Iterates_Source_Task_Selector() { var target = new ThrowingAsyncEnumerable <int>(); await using (var iter = target.Select(a => Task.FromResult(a)).GetAsyncEnumerator()) { await Assert.ThrowsAsync <NotImplementedException>(async() => { await iter.MoveNextAsync(); }); } }
public async Task Starting_Iteration_Iterates_Source_ValueTask_Selector_Indexer() { var target = new ThrowingAsyncEnumerable <int>(); await using (var iter = target.Select((a, i) => new ValueTask <int>(a)).GetAsyncEnumerator()) { await Assert.ThrowsAsync <NotImplementedException>(async() => { await iter.MoveNextAsync(); }); } }
public async Task Awaiting_Second_Causes_Iteration() { var first = AsyncEnumerable.Empty <int>(); var second = new ThrowingAsyncEnumerable <int>(); await Assert.ThrowsAsync <NotImplementedException>(async() => { await using (var item = first.Concat(second).GetAsyncEnumerator()) { await item.MoveNextAsync(); } }); }