Files
kilocode/packages/kilo-vscode/tests/unit/ime-enter-key.test.ts
T
Vishal Kumar Singh 38e27d4789 test(webview-ui): centralize IME Enter guard and add unit tests
Extract isEnterKeyCommitNotIme so PromptInput, docks, selectors, and KiloClaw
inputs share one definition. Bun tests cover Enter, composing, and keyCode 229.
2026-06-13 01:22:48 +05:30

21 lines
805 B
TypeScript

import { describe, it, expect } from "bun:test"
import { isEnterKeyCommitNotIme } from "../../webview-ui/src/utils/ime-enter"
describe("isEnterKeyCommitNotIme", () => {
it("is true for a normal Enter keydown", () => {
expect(isEnterKeyCommitNotIme({ key: "Enter", isComposing: false, keyCode: 13 })).toBe(true)
})
it("is false while isComposing is true", () => {
expect(isEnterKeyCommitNotIme({ key: "Enter", isComposing: true, keyCode: 13 })).toBe(false)
})
it("is false when keyCode is 229 (IME-processed key on Windows)", () => {
expect(isEnterKeyCommitNotIme({ key: "Enter", isComposing: false, keyCode: 229 })).toBe(false)
})
it("is false for non-Enter keys", () => {
expect(isEnterKeyCommitNotIme({ key: "a", isComposing: false, keyCode: 65 })).toBe(false)
})
})