Add multi touch and shift chording unit tests
Bug: 6501446 Change-Id: Iac423d152702241adae77fe1c343541d70608269main
parent
fd08b4390e
commit
2972ccb851
|
@ -34,6 +34,26 @@ public class KeyboardStateMultiTouchTests extends KeyboardStateTestsBase {
|
||||||
releaseKey(CODE_SYMBOL, ALPHABET_UNSHIFTED);
|
releaseKey(CODE_SYMBOL, ALPHABET_UNSHIFTED);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Chording input in shifted.
|
||||||
|
public void testChordingShifted() {
|
||||||
|
// Press shift key, enter alphabet shifted.
|
||||||
|
pressAndReleaseKey(CODE_SHIFT, ALPHABET_MANUAL_SHIFTED, ALPHABET_MANUAL_SHIFTED);
|
||||||
|
|
||||||
|
// Press shift key and hold, enter into choring shift state.
|
||||||
|
pressKey(CODE_SHIFT, ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Press/release letter key.
|
||||||
|
chordingPressAndReleaseKey('Z', ALPHABET_MANUAL_SHIFTED, ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Release shift key, switch back to alphabet shifted.
|
||||||
|
releaseKey(CODE_SHIFT, ALPHABET_MANUAL_SHIFTED);
|
||||||
|
|
||||||
|
// Press "?123" key and hold, enter into choring symbols state.
|
||||||
|
pressKey(CODE_SYMBOL, SYMBOLS_UNSHIFTED);
|
||||||
|
// Press/release symbol letter key.
|
||||||
|
chordingPressAndReleaseKey('1', SYMBOLS_UNSHIFTED, SYMBOLS_UNSHIFTED);
|
||||||
|
// Release "123?" key, switch back to alphabet shift unshifted.
|
||||||
|
releaseKey(CODE_SYMBOL, ALPHABET_UNSHIFTED);
|
||||||
|
}
|
||||||
|
|
||||||
// Chording input in shift locked.
|
// Chording input in shift locked.
|
||||||
public void testChordingShiftLocked() {
|
public void testChordingShiftLocked() {
|
||||||
// Long press shift key, enter alphabet shift locked.
|
// Long press shift key, enter alphabet shift locked.
|
||||||
|
@ -240,4 +260,116 @@ public class KeyboardStateMultiTouchTests extends KeyboardStateTestsBase {
|
||||||
// Release shift key
|
// Release shift key
|
||||||
releaseKey(CODE_SHIFT, ALPHABET_UNSHIFTED);
|
releaseKey(CODE_SHIFT, ALPHABET_UNSHIFTED);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Multi touch input in manual shifted.
|
||||||
|
public void testMultiTouchManualShifted() {
|
||||||
|
// Press/release shift key, enter into alphabet shifted.
|
||||||
|
pressAndReleaseKey(CODE_SHIFT, ALPHABET_MANUAL_SHIFTED, ALPHABET_MANUAL_SHIFTED);
|
||||||
|
|
||||||
|
// Press 'X' key and hold
|
||||||
|
pressKey('X', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// TODO: The following test fails due to a bug. Temporarily commented out.
|
||||||
|
// // Press 'z' key and hold, switch back to alphabet unshifted.
|
||||||
|
// chordingPressKey('z', ALPHABET_UNSHIFTED);
|
||||||
|
// // Release 'X' key
|
||||||
|
// releaseKey('X', ALPHABET_UNSHIFTED);
|
||||||
|
// // Release 'z' key
|
||||||
|
// releaseKey('z', ALPHABET_UNSHIFTED);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Multi touch input in automatic upper case.
|
||||||
|
public void testMultiTouchAutomaticUpperCase() {
|
||||||
|
// Set auto word caps mode on.
|
||||||
|
setAutoCapsMode(CAP_MODE_WORDS);
|
||||||
|
// Update shift state with auto caps enabled.
|
||||||
|
pressAndReleaseKey(CODE_AUTO_CAPS_TRIGGER, ALPHABET_UNSHIFTED, ALPHABET_AUTOMATIC_SHIFTED);
|
||||||
|
|
||||||
|
// Press 'X' key and hold
|
||||||
|
pressKey('X', ALPHABET_AUTOMATIC_SHIFTED);
|
||||||
|
// TODO: The following test fails due to a bug. Temporarily commented out.
|
||||||
|
// // Press 'z' key and hold, switch back to alphabet unshifted.
|
||||||
|
// chordingPressKey('z', ALPHABET_UNSHIFTED);
|
||||||
|
// // Release 'X' key
|
||||||
|
// releaseKey('X', ALPHABET_UNSHIFTED);
|
||||||
|
// // Release 'z' key
|
||||||
|
// releaseKey('z', ALPHABET_UNSHIFTED);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Multi touch input in capitalize character mode.
|
||||||
|
public void testMultiTouchCapModeCharacter() {
|
||||||
|
// Set auto character caps mode on.
|
||||||
|
setAutoCapsMode(CAP_MODE_CHARACTERS);
|
||||||
|
// Update shift state with auto caps enabled.
|
||||||
|
pressAndReleaseKey(CODE_AUTO_CAPS_TRIGGER, ALPHABET_UNSHIFTED, ALPHABET_AUTOMATIC_SHIFTED);
|
||||||
|
|
||||||
|
// Press 'X' key and hold
|
||||||
|
pressKey('X', ALPHABET_AUTOMATIC_SHIFTED);
|
||||||
|
// Press 'Z' key and hold, stay in automatic shifted mode.
|
||||||
|
chordingPressKey('Z', ALPHABET_AUTOMATIC_SHIFTED);
|
||||||
|
// Release 'X' key
|
||||||
|
releaseKey('X', ALPHABET_AUTOMATIC_SHIFTED);
|
||||||
|
// Release 'Z' key
|
||||||
|
releaseKey('Z', ALPHABET_AUTOMATIC_SHIFTED);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Multi touch shift chording input in manual shifted.
|
||||||
|
public void testMultiTouchShiftChordingManualShifted() {
|
||||||
|
// Press/release shift key, enter into alphabet shifted.
|
||||||
|
pressAndReleaseKey(CODE_SHIFT, ALPHABET_MANUAL_SHIFTED, ALPHABET_MANUAL_SHIFTED);
|
||||||
|
|
||||||
|
// Press shift key and hold, stays in alphabet shifted.
|
||||||
|
pressKey(CODE_SHIFT, ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Press 'X' key and hold
|
||||||
|
chordingPressKey('X', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Press 'Z' key and hold, stays in alphabet shifted.
|
||||||
|
chordingPressKey('Z', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Release 'X' key
|
||||||
|
releaseKey('X', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Release 'Z' key
|
||||||
|
releaseKey('Z', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Release shift key.
|
||||||
|
releaseKey(CODE_SHIFT, ALPHABET_MANUAL_SHIFTED);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Multi touch shift chording input in automatic upper case.
|
||||||
|
public void testMultiTouchShiftChordingAutomaticUpperCase() {
|
||||||
|
// Set auto word caps mode on.
|
||||||
|
setAutoCapsMode(CAP_MODE_WORDS);
|
||||||
|
// Update shift state with auto caps enabled.
|
||||||
|
pressAndReleaseKey(CODE_AUTO_CAPS_TRIGGER, ALPHABET_UNSHIFTED, ALPHABET_AUTOMATIC_SHIFTED);
|
||||||
|
|
||||||
|
// Press shift key and hold, switch to alphabet shifted.
|
||||||
|
pressKey(CODE_SHIFT, ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Press 'X' key and hold
|
||||||
|
chordingPressKey('X', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Press 'Z' key and hold, stays in alphabet shifted.
|
||||||
|
chordingPressKey('Z', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Release 'X' key
|
||||||
|
releaseKey('X', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Release 'Z' key
|
||||||
|
releaseKey('Z', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Release shift key.
|
||||||
|
releaseKey(CODE_SHIFT, ALPHABET_UNSHIFTED);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Multi touch shift chording input in capitalize character mode.
|
||||||
|
public void testMultiTouchShiftChordingCapModeCharacter() {
|
||||||
|
// Set auto character caps mode on.
|
||||||
|
setAutoCapsMode(CAP_MODE_CHARACTERS);
|
||||||
|
// Update shift state with auto caps enabled.
|
||||||
|
pressAndReleaseKey(CODE_AUTO_CAPS_TRIGGER, ALPHABET_UNSHIFTED, ALPHABET_AUTOMATIC_SHIFTED);
|
||||||
|
|
||||||
|
// Press shift key and hold, switch to alphabet shifted.
|
||||||
|
pressKey(CODE_SHIFT, ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Press 'X' key and hold
|
||||||
|
chordingPressKey('X', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Press 'Z' key and hold, stay in automatic shifted mode.
|
||||||
|
chordingPressKey('Z', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Release 'X' key
|
||||||
|
releaseKey('X', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Release 'Z' key
|
||||||
|
releaseKey('Z', ALPHABET_MANUAL_SHIFTED);
|
||||||
|
// Release shift key.
|
||||||
|
releaseKey(CODE_SHIFT, ALPHABET_UNSHIFTED);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue