Spaces:
Sleeping
Sleeping
import { Path, PathComponent, packPathComponent, queryPath, unpackPathComponent } from "./types"; | |
describe('queryPath', () => { | |
it('should return the correct path component', () => { | |
const p: Path = [ | |
[1, 2, 3, 4, 5], | |
[6, 7, 8, 9, 10], | |
[11, 12, 13, 14, 15] | |
]; | |
const expected = { | |
position: { x: 6, y: 7 }, | |
facing: { dx: 8, dy: 9 }, | |
t: 10, | |
}; | |
expect(queryPath(p, 1)).toEqual(expected); | |
}); | |
}); | |
describe('packPathComponent', () => { | |
it('should correctly pack a path component', () => { | |
const p: PathComponent = { | |
position: { x: 10, y: 20 }, | |
facing: { dx: 3, dy: 4 }, | |
t: 5, | |
}; | |
const expected = [10, 20, 3, 4, 5]; | |
expect(packPathComponent(p)).toEqual(expected); | |
}) | |
}); | |
describe('unpackPathComponent', () => { | |
it('should unpack a path component with positive values', () => { | |
const input: [number, number, number, number, number] = [10, 20, 3, 4, 5]; | |
const expected = { | |
position: { x: 10, y: 20 }, | |
facing: { dx: 3, dy: 4 }, | |
t: 5, | |
} | |
const actual = unpackPathComponent(input); | |
expect(actual).toEqual(expected); | |
}); | |
}); |