ai-chatbot/tests/routes/canvas-pan.test.ts

43 lines
1.0 KiB
TypeScript

import { expect, test } from "@playwright/test";
import {
isCanvasKeyboardPanKey,
shouldStartCanvasPointerPan,
} from "@/lib/canvas/pan";
test.describe("video canvas pointer pan", () => {
test("requires Space for left-button canvas panning", () => {
expect(
shouldStartCanvasPointerPan({
button: 0,
keyboardPanPressed: false,
}),
).toBe(false);
expect(
shouldStartCanvasPointerPan({
button: 0,
keyboardPanPressed: true,
}),
).toBe(true);
});
test("keeps middle-button panning independent of the keyboard", () => {
expect(
shouldStartCanvasPointerPan({
button: 1,
keyboardPanPressed: false,
}),
).toBe(true);
expect(
shouldStartCanvasPointerPan({
button: 2,
keyboardPanPressed: true,
}),
).toBe(false);
});
test("uses the physical Space code for keyboard pan state", () => {
expect(isCanvasKeyboardPanKey("Space")).toBe(true);
expect(isCanvasKeyboardPanKey("Enter")).toBe(false);
});
});