+ priorityQueue.enqueue(3, -1)
+ priorityQueue.enqueue(1, 1)
+ priorityQueue.enqueue(3, -2)
+ expect(priorityQueue.buckets).toBe(3)
+ expect(priorityQueue.size).toBe(6)
+ expect(priorityQueue.maxSize).toBe(6)
+ expect(priorityQueue.tail.empty()).toBe(false)
+ expect(priorityQueue.tail.next).toBeInstanceOf(FixedPriorityQueue)
+ let rtItem = priorityQueue.dequeue(3)
+ expect(priorityQueue.buckets).toBe(2)
+ expect(priorityQueue.size).toBe(5)
+ expect(priorityQueue.maxSize).toBe(6)
+ expect(rtItem).toBe(3)
+ expect(priorityQueue.tail.empty()).toBe(false)
+ expect(priorityQueue.tail.next).toBeInstanceOf(FixedPriorityQueue)
+ rtItem = priorityQueue.dequeue()
+ expect(priorityQueue.buckets).toBe(2)
+ expect(priorityQueue.size).toBe(4)
+ expect(priorityQueue.maxSize).toBe(6)
+ expect(rtItem).toBe(1)
+ expect(priorityQueue.tail.empty()).toBe(false)
+ expect(priorityQueue.tail.next).toBeInstanceOf(FixedPriorityQueue)
+ rtItem = priorityQueue.dequeue(2)
+ expect(priorityQueue.buckets).toBe(1)