public async void TimedSized_2_Consumers_Error()
        {
            var push = new ReplayAsyncEnumerable <int>(10, TimeSpan.FromHours(1));

            var en1 = push.GetAsyncEnumerator();
            var en2 = push.GetAsyncEnumerator();

            var task1 = Task.Run(async() =>
            {
                await en1.AssertFailure(typeof(InvalidOperationException), 1, 2, 3, 4, 5);
            });
            var task2 = Task.Run(async() =>
            {
                await en2.AssertFailure(typeof(InvalidOperationException), 1, 2, 3, 4, 5);
            });

            for (var i = 1; i <= 5; i++)
            {
                await push.Next(i);
            }
            await push.Error(new InvalidOperationException());

            await task1;
            await task2;
        }
Ejemplo n.º 2
0
        public async void Unbounded_No_Consumers_Error()
        {
            var push = new ReplayAsyncEnumerable <int>();

            for (var i = 1; i <= 5; i++)
            {
                await push.Next(i);
            }
            await push.Error(new InvalidOperationException());

            await push.AssertFailure(typeof(InvalidOperationException), 1, 2, 3, 4, 5);

            await push.AssertFailure(typeof(InvalidOperationException), 1, 2, 3, 4, 5);
        }
        public async void TimedSized_No_Consumers_Error()
        {
            var push = new ReplayAsyncEnumerable <int>(10, TimeSpan.FromHours(1));

            for (var i = 1; i <= 5; i++)
            {
                await push.Next(i);
            }
            await push.Error(new InvalidOperationException());

            await push.AssertFailure(typeof(InvalidOperationException), 1, 2, 3, 4, 5);

            await push.AssertFailure(typeof(InvalidOperationException), 1, 2, 3, 4, 5);
        }
        public async void Unbounded_One_Consumer_Error()
        {
            var push = new ReplayAsyncEnumerable <int>();

            var en1 = push.GetAsyncEnumerator();

            var task1 = Task.Run(async() =>
            {
                await en1.AssertFailure(typeof(InvalidOperationException), 1, 2, 3, 4, 5);
            });

            for (var i = 1; i <= 5; i++)
            {
                await push.Next(i);
            }
            await push.Error(new InvalidOperationException());

            await task1;
        }