18 lines
469 B
JavaScript
18 lines
469 B
JavaScript
import assert from 'node:assert';
|
|
import { PriorityQueue } from '../src/misc/priority_queue.js';
|
|
|
|
describe('PriorityQueue', function () {
|
|
it('everything', function() {
|
|
let q = new PriorityQueue();
|
|
q.push(1).push(2).push(-1).push('hi', 4);
|
|
assert.equal(q.size(), 4);
|
|
assert.equal(q.top()[0], 'hi');
|
|
|
|
assert.equal(q.pop()[0], 'hi');
|
|
assert.equal(q.pop()[0], 2);
|
|
assert.equal(q.pop()[0], 1);
|
|
assert.equal(q.pop()[0], -1);
|
|
|
|
assert.ok(q.empty());
|
|
});
|
|
}); |