import { describe, expect, test } from "vitest"; import { RandomAccessIterator, SequenceContainer, Vector, VectorIterator } from "../src"; describe(Vector.name, () => { test('@concepts', () => { expect(SequenceContainer.is(Vector.prototype, true)).toBeTruthy() expect(RandomAccessIterator.is(VectorIterator.prototype, true)).toBeTruthy() }) test('get, set', () => { const vec = new Vector(0, 2) expect(vec.get(1)).toEqual(0) vec.set(1, 2) expect(vec.get(1)).toEqual(2) expect(() => vec.get(2)).toThrow() }) }) describe(VectorIterator.name, () => { test('sub', () => { const vector = Vector.from([1, 2, 3]) expect(vector.begin().add(2).value).toEqual(3) expect(vector.begin().add(2).sub(vector.begin())).toEqual(2) }) })