Example #1
0
        public void CancelThrowsWhenAttemptingToCancelWhenCancelTokenIsManagedByOtherObject()
        {
            var input = CreateMultipleBags();

            List <int[]> expected = input.expected;

            var consumer = new MultiConcurrentConsumer <int, int>()
            {
                Collections      = input.bags,
                ResultCollection = new ConcurrentQueue <int>()
            };

            CancellationTokenSource TokenSource = new CancellationTokenSource();

            Task consumerTask = consumer.ConsumeAsync(TokenSource.Token);

            TaskStatus status = consumerTask.Status;

            Assert.Throws <NotSupportedException>(() => consumer.Cancel());
        }