mirror of
https://github.com/ICDSystems/ICD.Common.Utils.git
synced 2026-02-15 12:45:01 +00:00
feat: Adding additional enqueue methods to PriorityQueue
This commit is contained in:
@@ -98,6 +98,51 @@ namespace ICD.Common.Utils.Tests.Collections
|
||||
Assert.AreEqual(1, dequeue[2]);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void EnqueueFirstTest()
|
||||
{
|
||||
PriorityQueue<int> queue = new PriorityQueue<int>();
|
||||
|
||||
queue.Enqueue(1, int.MaxValue);
|
||||
queue.Enqueue(2, int.MinValue);
|
||||
queue.EnqueueFirst(3);
|
||||
|
||||
Assert.AreEqual(3, queue.Count);
|
||||
|
||||
Assert.AreEqual(3, queue.Dequeue());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void EnqueueRemoveTest()
|
||||
{
|
||||
PriorityQueue<int> queue = new PriorityQueue<int>();
|
||||
|
||||
queue.Enqueue(1);
|
||||
queue.Enqueue(2);
|
||||
queue.Enqueue(3);
|
||||
|
||||
queue.EnqueueRemove(4, i => i == 2);
|
||||
|
||||
Assert.AreEqual(3, queue.Count);
|
||||
|
||||
List<int> dequeue = new List<int>
|
||||
{
|
||||
queue.Dequeue(),
|
||||
queue.Dequeue(),
|
||||
queue.Dequeue()
|
||||
};
|
||||
|
||||
Assert.AreEqual(1, dequeue[0]);
|
||||
Assert.AreEqual(4, dequeue[1]);
|
||||
Assert.AreEqual(3, dequeue[2]);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void EnqueueRemovePriorityTest()
|
||||
{
|
||||
Assert.Inconclusive();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void DequeueTest()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user