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_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();
                }
            });
        }