From 61c4a32f05d07c6ee3bac19a51ac9e4adf34c171 Mon Sep 17 00:00:00 2001 From: zonble Date: Wed, 2 Feb 2022 07:34:27 +0800 Subject: [PATCH] Adds tests. --- McBopomofoTests/KeyHandlerBopomofoTests.swift | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/McBopomofoTests/KeyHandlerBopomofoTests.swift b/McBopomofoTests/KeyHandlerBopomofoTests.swift index 5a9e8b70..8344842f 100644 --- a/McBopomofoTests/KeyHandlerBopomofoTests.swift +++ b/McBopomofoTests/KeyHandlerBopomofoTests.swift @@ -139,6 +139,50 @@ class KeyHandlerBopomofoTests: XCTestCase { XCTAssertFalse(result) } + func testIgnoreCommand() { + let input = KeyHandlerInput(inputText: "A", keyCode: 0, charCode: 0, flags: [.command], isVerticalMode: false) + var state: InputState = InputState.Empty() + let result = handler.handle(input, state: state) { newState in + state = newState + } candidateSelectionCallback: { + } errorCallback: { + } + XCTAssertFalse(result) + } + + func testIgnoreOption() { + let input = KeyHandlerInput(inputText: "A", keyCode: 0, charCode: 0, flags: [.option], isVerticalMode: false) + var state: InputState = InputState.Empty() + let result = handler.handle(input, state: state) { newState in + state = newState + } candidateSelectionCallback: { + } errorCallback: { + } + XCTAssertFalse(result) + } + + func testIgnoreNumericPad() { + let input = KeyHandlerInput(inputText: "A", keyCode: 0, charCode: 0, flags: [.numericPad], isVerticalMode: false) + var state: InputState = InputState.Empty() + let result = handler.handle(input, state: state) { newState in + state = newState + } candidateSelectionCallback: { + } errorCallback: { + } + XCTAssertFalse(result) + } + + func testIgnoreCapslock() { + let input = KeyHandlerInput(inputText: "A", keyCode: 0, charCode: 0, flags: [.capsLock], isVerticalMode: false) + var state: InputState = InputState.Empty() + let result = handler.handle(input, state: state) { newState in + state = newState + } candidateSelectionCallback: { + } errorCallback: { + } + XCTAssertFalse(result) + } + func testPunctuationTable() { let enabled = Preferences.halfWidthPunctuationEnabled Preferences.halfWidthPunctuationEnabled = false