Exemple #1
0
        public void TryAdd_IgnoresCompletedOperations()
        {
            // Arrage
            var queue = new AsyncResultQueue <AsyncResult>();
            var op    = AsyncResult.CompletedOperation;

            // Act
            var result = queue.TryAdd(op);

            // Assert
            Assert.False(result);
            Assert.True(queue.IsEmpty);
            Assert.Empty(queue);
            Assert.Null(queue.Current);
        }
Exemple #2
0
        public void TryAdd_AddsNewOperation()
        {
            // Arrage
            var queue = new AsyncResultQueue <AsyncResult>();
            var op    = new AsyncResult();

            // Act
            var result = queue.TryAdd(op);

            // Assert
            Assert.True(result);
            Assert.False(queue.IsEmpty);
            Assert.NotEmpty(queue);
            Assert.Equal(op, queue.Current);
            Assert.Equal(AsyncOperationStatus.Running, op.Status);
        }