コード例 #1
0
        public async Task ArrayToStream_Cancel()
        {
            // arrange
            var list            = new List <object?>();
            var asyncEnumerable = new TestEnumerable(_strings);
            var adapter         = new AsyncEnumerableStreamAdapter <string>(asyncEnumerable);
            var cts             = new CancellationTokenSource();

            // act
            await foreach (var item in adapter.WithCancellation(cts.Token))
            {
                list.Add(item);
                cts.Cancel();
            }

            // assert
            Assert.Collection(list, s => Assert.Equal(_strings[0], s));
        }