Repo // Applying .charComponents().

This commit is contained in:
ShikiSuen 2022-08-23 11:05:30 +08:00
parent 2fce64447d
commit df93206a6d
6 changed files with 37 additions and 101 deletions

View File

@ -490,8 +490,8 @@ public enum InputState {
return cursorIndexU8..<min(cursorIndexU8 + chosenCandidateString.count, composingBuffer.count - 1) return cursorIndexU8..<min(cursorIndexU8 + chosenCandidateString.count, composingBuffer.count - 1)
} }
}() }()
let strSegmentedRear = composingBuffer.map { String($0) }[0..<u8Range.lowerBound].joined() let strSegmentedRear = composingBuffer.charComponents[0..<u8Range.lowerBound].joined()
let strSegmentedFront = composingBuffer.map { String($0) }[u8Range.upperBound...].joined() let strSegmentedFront = composingBuffer.charComponents[u8Range.upperBound...].joined()
let newBufferConverted: String = NotEmpty( let newBufferConverted: String = NotEmpty(
composingBuffer: strSegmentedRear + chosenCandidateString + strSegmentedFront, cursorIndex: 0 composingBuffer: strSegmentedRear + chosenCandidateString + strSegmentedFront, cursorIndex: 0
).composingBufferConverted ).composingBufferConverted

View File

@ -184,7 +184,7 @@ public class KeyHandler {
position += currentNode.keyArray.count position += currentNode.keyArray.count
continue continue
} }
let values = currentNode.currentPair.value.map { String($0) } let values = currentNode.currentPair.value.charComponents
for (subPosition, key) in currentNode.keyArray.enumerated() { for (subPosition, key) in currentNode.keyArray.enumerated() {
guard values.count > subPosition else { break } // guard values.count > subPosition else { break } //
let thePair = Megrez.Compositor.Candidate( let thePair = Megrez.Compositor.Candidate(

View File

@ -30,7 +30,7 @@ extension KeyHandler {
/// ///
for theNode in compositor.walkedNodes { for theNode in compositor.walkedNodes {
let strNodeValue = theNode.value let strNodeValue = theNode.value
let arrSplit: [String] = Array(strNodeValue).map { String($0) } let arrSplit: [String] = Array(strNodeValue).charComponents
let codepointCount = arrSplit.count let codepointCount = arrSplit.count
/// ///
/// NodeAnchorspanningLength /// NodeAnchorspanningLength

View File

@ -58,7 +58,7 @@ extension vChewing {
public func valuesFor(key: String) -> [String] { public func valuesFor(key: String) -> [String] {
var pairs: [String] = [] var pairs: [String] = []
if let arrRangeRecords: String = rangeMap[key] { if let arrRangeRecords: String = rangeMap[key] {
pairs.append(contentsOf: arrRangeRecords.map { String($0) }) pairs.append(contentsOf: arrRangeRecords.charComponents)
} }
var set = Set<String>() var set = Set<String>()
return pairs.filter { set.insert($0).inserted } return pairs.filter { set.insert($0).inserted }

View File

@ -467,9 +467,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testInvalidBpmf() { func testInvalidBpmf() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("eul4").map { let keys = Array("eul4").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -482,9 +480,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testInputting() { func testInputting() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("18 m,45j/ fu. g0 xup6xu;6").map { let keys = Array("18 m,45j/ fu. g0 xup6xu;6").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -500,9 +496,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testInputtingNihao() { func testInputtingNihao() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -518,9 +512,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testInputtingTianKong() { func testInputtingTianKong() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("wu0 dj/ ").map { let keys = Array("wu0 dj/ ").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -536,9 +528,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testCommittingNihao() { func testCommittingNihao() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -580,9 +570,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testDelete() { func testDelete() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -662,9 +650,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testBackspaceToDeleteReading() { func testBackspaceToDeleteReading() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su").map { let keys = Array("su").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -696,9 +682,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testBackspaceAtBegin() { func testBackspaceAtBegin() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -739,9 +723,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testBackspaceToDeleteReadingWithText() { func testBackspaceToDeleteReadingWithText() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl").map { let keys = Array("su3cl").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -777,9 +759,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testBackspace() { func testBackspace() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -818,9 +798,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testCursorWithReading() { func testCursorWithReading() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl").map { let keys = Array("su3cl").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -855,9 +833,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testCursor() { func testCursor() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -948,9 +924,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testCandidateWithDown() { func testCandidateWithDown() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3").map { let keys = Array("su3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -985,9 +959,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
let enabled = mgrPrefs.chooseCandidateUsingSpace let enabled = mgrPrefs.chooseCandidateUsingSpace
mgrPrefs.chooseCandidateUsingSpace = true mgrPrefs.chooseCandidateUsingSpace = true
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3").map { let keys = Array("su3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1023,9 +995,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
let enabled = mgrPrefs.chooseCandidateUsingSpace let enabled = mgrPrefs.chooseCandidateUsingSpace
mgrPrefs.chooseCandidateUsingSpace = false mgrPrefs.chooseCandidateUsingSpace = false
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3").map { let keys = Array("su3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: InputState.Empty()) { newState in _ = handler.handle(input: input, state: InputState.Empty()) { newState in
@ -1079,9 +1049,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
let enabled = mgrPrefs.chooseCandidateUsingSpace let enabled = mgrPrefs.chooseCandidateUsingSpace
mgrPrefs.chooseCandidateUsingSpace = false mgrPrefs.chooseCandidateUsingSpace = false
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1117,9 +1085,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testHomeAndEnd() { func testHomeAndEnd() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1191,9 +1157,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testHomeAndEndWithReading() { func testHomeAndEndWithReading() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl").map { let keys = Array("su3cl").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1245,9 +1209,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testMarkingLeftAtBegin() { func testMarkingLeftAtBegin() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1279,9 +1241,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testMarkingRightAtEnd() { func testMarkingRightAtEnd() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1304,9 +1264,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testMarkingLeft() { func testMarkingLeft() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1371,9 +1329,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testMarkingRight() { func testMarkingRight() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1455,9 +1411,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
func testCancelMarking() { func testCancelMarking() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl3").map { let keys = Array("su3cl3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1503,9 +1457,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
let enabled = mgrPrefs.escToCleanInputBuffer let enabled = mgrPrefs.escToCleanInputBuffer
mgrPrefs.escToCleanInputBuffer = false mgrPrefs.escToCleanInputBuffer = false
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su").map { let keys = Array("su").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1535,9 +1487,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
let enabled = mgrPrefs.escToCleanInputBuffer let enabled = mgrPrefs.escToCleanInputBuffer
mgrPrefs.escToCleanInputBuffer = false mgrPrefs.escToCleanInputBuffer = false
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl").map { let keys = Array("su3cl").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -1571,9 +1521,7 @@ class KeyHandlerTestsNormalCHS: XCTestCase {
let enabled = mgrPrefs.escToCleanInputBuffer let enabled = mgrPrefs.escToCleanInputBuffer
mgrPrefs.escToCleanInputBuffer = true mgrPrefs.escToCleanInputBuffer = true
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3cl").map { let keys = Array("su3cl").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [], isVerticalTyping: false)
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in

View File

@ -190,9 +190,7 @@ class KeyHandlerTestsSCPCCHT: XCTestCase {
func testInputNi() { func testInputNi() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su").map { let keys = Array("su").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: []) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [])
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -209,9 +207,7 @@ class KeyHandlerTestsSCPCCHT: XCTestCase {
func testInputNi3() { func testInputNi3() {
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3").map { let keys = Array("su3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: []) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [])
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -230,9 +226,7 @@ class KeyHandlerTestsSCPCCHT: XCTestCase {
func testCancelCandidateUsingDelete() { func testCancelCandidateUsingDelete() {
mgrPrefs.useSCPCTypingMode = true mgrPrefs.useSCPCTypingMode = true
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3").map { let keys = Array("su3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: []) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [])
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -257,9 +251,7 @@ class KeyHandlerTestsSCPCCHT: XCTestCase {
func testCancelCandidateUsingEsc() { func testCancelCandidateUsingEsc() {
mgrPrefs.useSCPCTypingMode = true mgrPrefs.useSCPCTypingMode = true
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("su3").map { let keys = Array("su3").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: []) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [])
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -285,9 +277,7 @@ class KeyHandlerTestsSCPCCHT: XCTestCase {
mgrPrefs.useSCPCTypingMode = true mgrPrefs.useSCPCTypingMode = true
handler.forceOpenStringInsteadForAssociatePhrases("二 百五") handler.forceOpenStringInsteadForAssociatePhrases("二 百五")
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("-41").map { let keys = Array("-41").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: []) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [])
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in
@ -308,9 +298,7 @@ class KeyHandlerTestsSCPCCHT: XCTestCase {
let enabled = mgrPrefs.associatedPhrasesEnabled let enabled = mgrPrefs.associatedPhrasesEnabled
mgrPrefs.associatedPhrasesEnabled = false mgrPrefs.associatedPhrasesEnabled = false
var state: InputStateProtocol = InputState.Empty() var state: InputStateProtocol = InputState.Empty()
let keys = Array("aul ").map { let keys = Array("aul ").charComponents
String($0)
}
for key in keys { for key in keys {
let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: []) let input = InputSignal(inputText: key, keyCode: 0, charCode: charCode(key), flags: [])
_ = handler.handle(input: input, state: state) { newState in _ = handler.handle(input: input, state: state) { newState in