public void Receive_WhenAddingTwoMessagesAndThenReadOne_QueueCountIsOne() { using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { queue.Enqueue(1); queue.Enqueue(2); queue.Receive(new CancellationTokenSource().Token); Assert.AreEqual(1, queue.Count); } }
public void Recover_WhenAddingTwoMessagesAndDisposesQueue_NewQueueHasTwoMessages() { using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { queue.Enqueue(1); queue.Enqueue(2); queue.Dispose(); } using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { Assert.AreEqual(2, queue.Count); } }
public void Enqueue_Adding10000MessagesSequencial_WorksFine() { using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { for (var i = 0; i < 10000; i++) queue.Enqueue(1); Assert.AreEqual(10000, queue.Count); } }
public void Receive_WhenHavingTransactionAndOneItemAreAddedToQueue_FileIsNotRemovedFromFileSystem() { using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { using (var transaction = queue.BeginTransaction()) { queue.Enqueue(1); var message = queue.Receive(new CancellationTokenSource().Token, transaction); Assert.IsTrue(new FileInfo(Path.Combine(QueuePath, "data", message.MessageId.ToString())).Exists); } } }
public void Enqueue_Adding10000MessagesSequencial_WorksFine() { using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { for (var i = 0; i < 10000; i++) { queue.Enqueue(1); } Assert.AreEqual(10000, queue.Count); } }
public void Enqueue_WhenCreatingTwoInstancesAndAddingOneToEachOne_QueueCountIsTwo() { using (var queue1 = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { using (var queue2 = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { queue1.Enqueue(1); queue2.Enqueue(2); Assert.AreEqual(2, queue1.Count); Assert.AreEqual(2, queue2.Count); } } }
public void Dequeue_WhenAddingStringToQueue_WhenDequingSameStringIsReturned() { using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { queue.Enqueue("Niclas"); queue.Dispose(); } using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { Assert.AreEqual("Niclas", queue.Receive(new CancellationTokenSource().Token).Payload); } }
public void Receive_WhenHavingTransactionAndOneItemAreAddedToQueue_FileAreReaddedToQueueWhenRollback() { using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { using (var transaction = queue.BeginTransaction()) { queue.Enqueue(1); var message = queue.Receive(new CancellationTokenSource().Token, transaction); Assert.IsTrue(new FileInfo(Path.Combine(QueuePath, "data", message.MessageId.ToString())).Exists); } Assert.AreEqual(1, queue.Count); } }
public void Enqueue_Adding10000MessagesAsyncroniusly_WorksFine() { Parallel.For(0, 10, x => { using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { for (var i = 0; i < 1000; i++) queue.Enqueue(1); } }); using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { Assert.AreEqual(10000, queue.Count); } }
public void Enqueue_Adding10000MessagesAsyncroniusly_WorksFine() { Parallel.For(0, 10, x => { using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { for (var i = 0; i < 1000; i++) { queue.Enqueue(1); } } }); using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { Assert.AreEqual(10000, queue.Count); } }
public void Receive_WhenHavingTransactionAndOneItemAreAddedToQueue_FileIsRemovedFromFileSystemWhenCommited() { using (var queue = new SimpleMessageQueue(new DirectoryInfo(QueuePath))) { using (var transaction = queue.BeginTransaction()) { queue.Enqueue(1); var message = queue.Receive(new CancellationTokenSource().Token, transaction); transaction.Commit(); Assert.IsFalse(new FileInfo(Path.Combine(QueuePath, "data", message.MessageId.ToString())).Exists); } } }