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