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