BangSo/apps/mobile/lib/avatar-motion.test.ts

17 lines
773 B
TypeScript
Raw Permalink Normal View History

2026-09-01 16:51:19 +00:00
import { describe, expect, it } from "vitest";
import { workingAvatarDuration, workingAvatarFrame } from "./avatar-motion";
describe("working avatar motion", () => {
it("loops cleanly while keeping identity-specific choreography", () => {
const start = workingAvatarFrame(0, 0);
const end = workingAvatarFrame(0, 1);
expect(end.translationY).toBeCloseTo(start.translationY);
expect(end.scaleX).toBeCloseTo(start.scaleX);
expect(end.eyeOffsetX).toBeCloseTo(start.eyeOffsetX);
expect(end.eyeOffsetY).toBeCloseTo(start.eyeOffsetY);
expect(workingAvatarFrame(0, 0.5)).not.toEqual(workingAvatarFrame(0, 0));
expect(workingAvatarFrame(2, 0.5)).not.toEqual(workingAvatarFrame(0, 0.5));
expect(workingAvatarDuration(6)).toBe(1100);
});
});