Files
iterables-js/test/Vector.test.js
2025-07-23 10:36:50 +03:00

26 lines
775 B
JavaScript

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)
})
})