public void Handles()
{
IPriorityQueueHandle<int>[] handles = new IPriorityQueueHandle<int>[10];
queue.Add(ref handles[0], 7);
Assert.IsTrue(queue.Check());
queue.Add(ref handles[1], 72);
Assert.IsTrue(queue.Check());
queue.Add(ref handles[2], 27);
Assert.IsTrue(queue.Check());
queue.Add(ref handles[3], 17);
Assert.IsTrue(queue.Check());
queue.Add(ref handles[4], 70);
Assert.IsTrue(queue.Check());
queue.Add(ref handles[5], 1);
Assert.IsTrue(queue.Check());
queue.Add(ref handles[6], 2);
Assert.IsTrue(queue.Check());
queue.Add(ref handles[7], 7);
Assert.IsTrue(queue.Check());
queue.Add(ref handles[8], 8);
Assert.IsTrue(queue.Check());
queue.Add(ref handles[9], 9);
Assert.IsTrue(queue.Check());
queue.Delete(handles[2]);
Assert.IsTrue(queue.Check());
queue.Delete(handles[0]);
Assert.IsTrue(queue.Check());
queue.Delete(handles[8]);
Assert.IsTrue(queue.Check());
queue.Delete(handles[4]);
Assert.IsTrue(queue.Check());
queue.Delete(handles[6]);
Assert.IsTrue(queue.Check());
Assert.AreEqual(5, queue.Count);
}