openarras/tests/treap.test.js
2023-05-31 14:42:58 +08:00

25 lines
632 B
JavaScript

import assert from 'node:assert';
import { TreapSet } from '../src/misc/treap.js';
describe('TreapSet', function () {
it('hasInstance', function() {
let t = new TreapSet();
assert.equal(t.takeInstance(), null);
t.insertRaw(2);
assert.equal(t.takeInstance(), 2);
});
it('erase', function () {
let t = new TreapSet();
t.insertRaw(2).insertRaw(3).erase(2);
assert.equal(t.takeInstance(), 3);
});
it('forEach', function() {
let t = new TreapSet();
t.insertRaw(2).insertRaw(3).insertRaw(-1).insertRaw(0).insertRaw(10);
let a = [];
t.forEach(x => a.push(x));
assert.deepEqual(a, [-1, 0, 2, 3, 10])
});
});