webai/archive/test-ioset.ts
2024-08-29 16:09:44 -07:00

32 lines
739 B
TypeScript

import IOSet from '../site/snake/ioset';
import { addTest, assert, assertArrayEqual } from './tests';
function testOrderMaintained() {
const s = new IOSet();
s.add('A');
s.add('B');
s.add('C');
s.add('D');
s.add('E');
s.add('F');
assert(s.size === 6);
assertArrayEqual(Array.from(s), ['A', 'B', 'C', 'D', 'E', 'F']);
}
addTest(testOrderMaintained);
function testOrderMaintainedWithDelete() {
const s = new IOSet();
s.add('A');
s.add('B');
s.add('C');
s.add('D');
s.add('E');
s.delete('D');
s.add('F');
s.delete('B');
s.add('G');
assert(s.size === 5);
assertArrayEqual(Array.from(s), ['A', 'C', 'E', 'F', 'G']);
}
addTest(testOrderMaintainedWithDelete);