Files
Termix/scripts/electron-keyboard-shortcuts.test.ts
T

34 lines
1.0 KiB
TypeScript
Raw Normal View History

+5
2026-08-19 14:12:06 -05:00
import { createRequire } from "node:module";
import { describe, expect, it } from "vitest";
const require = createRequire(import.meta.url);
const { isCloseActiveTabInput } =
require("../electron/keyboard-shortcuts.cjs") as {
isCloseActiveTabInput: (input: {
type: string;
key: string;
control?: boolean;
alt?: boolean;
shift?: boolean;
meta?: boolean;
}) => boolean;
};
describe("Electron keyboard shortcuts", () => {
it("recognizes Ctrl+W without extra modifiers", () => {
expect(
isCloseActiveTabInput({ type: "keyDown", key: "w", control: true }),
).toBe(true);
});
it.each([
{ type: "keyUp", key: "w", control: true },
{ type: "keyDown", key: "w", control: true, alt: true },
{ type: "keyDown", key: "w", control: true, shift: true },
{ type: "keyDown", key: "w", meta: true },
{ type: "keyDown", key: "q", control: true },
])("does not consume other input: %o", (input) => {
expect(isCloseActiveTabInput(input)).toBe(false);
});
});