public async Task FirstShouldReturnFirstElement()
{
Assert.AreEqual(10,await AsyncEnumerable.Range(10,20).First());
#pragma warning disable 1998
Assert.AreEqual(11,await AsyncEnumerable.Range(0,20).First(async i => i > 10 && i % 2 > 0));
#pragma warning restore 1998
try
{
#pragma warning disable 1998
await AsyncEnumerable.Range(0, 1).First(async i => i > 3);
#pragma warning restore 1998
Assert.Fail("No exception thrown");
}
catch( InvalidOperationException )
{
}
}