|
@@ -16,12 +16,19 @@ namespace Tests
|
|
|
public async Task Any_Null()
|
|
|
{
|
|
|
await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync<int>(default));
|
|
|
+ await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync<int>(default, CancellationToken.None));
|
|
|
+
|
|
|
await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync<int>(default, x => true));
|
|
|
await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync(Return42, default(Func<int, bool>)));
|
|
|
|
|
|
- await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync<int>(default, CancellationToken.None));
|
|
|
await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync<int>(default, x => true, CancellationToken.None));
|
|
|
await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync(Return42, default(Func<int, bool>), CancellationToken.None));
|
|
|
+
|
|
|
+ await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync<int>(default, x => new ValueTask<bool>(true)));
|
|
|
+ await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync(Return42, default(Func<int, ValueTask<bool>>)));
|
|
|
+
|
|
|
+ await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync<int>(default, x => new ValueTask<bool>(true), CancellationToken.None));
|
|
|
+ await Assert.ThrowsAsync<ArgumentNullException>(() => AsyncEnumerable.AnyAsync(Return42, default(Func<int, ValueTask<bool>>), CancellationToken.None));
|
|
|
}
|
|
|
|
|
|
[Fact]
|
|
@@ -67,5 +74,35 @@ namespace Tests
|
|
|
var res = new int[0].ToAsyncEnumerable().AnyAsync();
|
|
|
Assert.False(await res);
|
|
|
}
|
|
|
+
|
|
|
+ [Fact]
|
|
|
+ public async Task Any7Async()
|
|
|
+ {
|
|
|
+ var res = new[] { 1, 2, 3, 4 }.ToAsyncEnumerable().AnyAsync(x => new ValueTask<bool>(x % 2 == 0));
|
|
|
+ Assert.True(await res);
|
|
|
+ }
|
|
|
+
|
|
|
+ [Fact]
|
|
|
+ public async Task Any8Async()
|
|
|
+ {
|
|
|
+ var res = new[] { 2, 8, 4 }.ToAsyncEnumerable().AnyAsync(x => new ValueTask<bool>(x % 2 != 0));
|
|
|
+ Assert.False(await res);
|
|
|
+ }
|
|
|
+
|
|
|
+ [Fact]
|
|
|
+ public async Task Any9Async()
|
|
|
+ {
|
|
|
+ var ex = new Exception("Bang!");
|
|
|
+ var res = Throw<int>(ex).AnyAsync(x => new ValueTask<bool>(x % 2 == 0));
|
|
|
+ await AssertThrowsAsync(res, ex);
|
|
|
+ }
|
|
|
+
|
|
|
+ [Fact]
|
|
|
+ public async Task Any10Async()
|
|
|
+ {
|
|
|
+ var ex = new Exception("Bang!");
|
|
|
+ var res = new[] { 2, 8, 4 }.ToAsyncEnumerable().AnyAsync(new Func<int, ValueTask<bool>>(x => { throw ex; }));
|
|
|
+ await AssertThrowsAsync(res, ex);
|
|
|
+ }
|
|
|
}
|
|
|
}
|