public void Enqueue_Dequeue_Enqueue_Succeeds() { var q = new EndpointConcurrentQueueSet(); var endpoint = new Endpoint { Issuer = "issuer1" }; q.TryEnqueue(endpoint); q.TryDequeue(out var _); var ok = q.TryEnqueue(endpoint); Assert.True(ok); }
public void Enqueueing_Twice_Fails_On_Second_Add() { var q = new EndpointConcurrentQueueSet(); var endpoint = new Endpoint { Issuer = "issuer1" }; var first = q.TryEnqueue(endpoint); var second = q.TryEnqueue(endpoint); Assert.True(first); Assert.False(second); }
public void Drain_Length_Equals_Unique_Additions() { var q = new EndpointConcurrentQueueSet(); var e1 = new Endpoint { Issuer = "issuer1" }; var e2 = new Endpoint { Issuer = "issuer2" }; q.TryEnqueue(e1); q.TryEnqueue(e2); q.TryEnqueue(e2); var uniq = q.Drain(); Assert.Equal(2, uniq.Count()); }
public void Fresh_Queue_Is_Empty() { var q = new EndpointConcurrentQueueSet(); Assert.True(q.IsEmpty); }