|
@@ -85,7 +85,7 @@ TEST_F(KeyPress, CorrectKeysAreReportedWhenTwoKeysArePressed) {
|
|
|
TEST_F(KeyPress, LeftShiftIsReportedCorrectly) {
|
|
|
TestDriver driver;
|
|
|
auto key_a = KeymapKey(0, 0, 0, KC_A);
|
|
|
- auto key_lsft = KeymapKey(0, 3, 0, KC_LSFT);
|
|
|
+ auto key_lsft = KeymapKey(0, 3, 0, KC_LEFT_SHIFT);
|
|
|
|
|
|
set_keymap({key_a, key_lsft});
|
|
|
|
|
@@ -110,8 +110,8 @@ TEST_F(KeyPress, LeftShiftIsReportedCorrectly) {
|
|
|
|
|
|
TEST_F(KeyPress, PressLeftShiftAndControl) {
|
|
|
TestDriver driver;
|
|
|
- auto key_lsft = KeymapKey(0, 3, 0, KC_LSFT);
|
|
|
- auto key_lctrl = KeymapKey(0, 5, 0, KC_LCTRL);
|
|
|
+ auto key_lsft = KeymapKey(0, 3, 0, KC_LEFT_SHIFT);
|
|
|
+ auto key_lctrl = KeymapKey(0, 5, 0, KC_LEFT_CTRL);
|
|
|
|
|
|
set_keymap({key_lctrl, key_lsft});
|
|
|
|
|
@@ -138,8 +138,8 @@ TEST_F(KeyPress, PressLeftShiftAndControl) {
|
|
|
|
|
|
TEST_F(KeyPress, LeftAndRightShiftCanBePressedAtTheSameTime) {
|
|
|
TestDriver driver;
|
|
|
- auto key_lsft = KeymapKey(0, 3, 0, KC_LSFT);
|
|
|
- auto key_rsft = KeymapKey(0, 4, 0, KC_RSFT);
|
|
|
+ auto key_lsft = KeymapKey(0, 3, 0, KC_LEFT_SHIFT);
|
|
|
+ auto key_rsft = KeymapKey(0, 4, 0, KC_RIGHT_SHIFT);
|
|
|
|
|
|
set_keymap({key_rsft, key_lsft});
|
|
|
|
|
@@ -175,12 +175,12 @@ TEST_F(KeyPress, RightShiftLeftControlAndCharWithTheSameKey) {
|
|
|
// The underlying cause is that we use only one bit to represent the right hand
|
|
|
// modifiers.
|
|
|
combo_key.press();
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_RSFT, KC_RCTRL)));
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_RSFT, KC_RCTRL, KC_O)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_RIGHT_SHIFT, KC_RIGHT_CTRL)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_RIGHT_SHIFT, KC_RIGHT_CTRL, KC_O)));
|
|
|
keyboard_task();
|
|
|
|
|
|
combo_key.release();
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_RSFT, KC_RCTRL)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_RIGHT_SHIFT, KC_RIGHT_CTRL)));
|
|
|
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
|
|
|
keyboard_task();
|
|
|
}
|
|
@@ -189,18 +189,18 @@ TEST_F(KeyPress, PressPlusEqualReleaseBeforePress) {
|
|
|
TestDriver driver;
|
|
|
InSequence s;
|
|
|
auto key_plus = KeymapKey(0, 1, 1, KC_PLUS);
|
|
|
- auto key_eql = KeymapKey(0, 0, 1, KC_EQL);
|
|
|
+ auto key_eql = KeymapKey(0, 0, 1, KC_EQUAL);
|
|
|
|
|
|
set_keymap({key_plus, key_eql});
|
|
|
|
|
|
key_plus.press();
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)));
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_EQL)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LEFT_SHIFT)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LEFT_SHIFT, KC_EQUAL)));
|
|
|
run_one_scan_loop();
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
|
|
|
key_plus.release();
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LEFT_SHIFT)));
|
|
|
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
|
|
|
run_one_scan_loop();
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
@@ -220,13 +220,13 @@ TEST_F(KeyPress, PressPlusEqualDontReleaseBeforePress) {
|
|
|
TestDriver driver;
|
|
|
InSequence s;
|
|
|
auto key_plus = KeymapKey(0, 1, 1, KC_PLUS);
|
|
|
- auto key_eql = KeymapKey(0, 0, 1, KC_EQL);
|
|
|
+ auto key_eql = KeymapKey(0, 0, 1, KC_EQUAL);
|
|
|
|
|
|
set_keymap({key_plus, key_eql});
|
|
|
|
|
|
key_plus.press();
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)));
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_EQL)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LEFT_SHIFT)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LEFT_SHIFT, KC_EQUAL)));
|
|
|
run_one_scan_loop();
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
|
|
@@ -237,14 +237,13 @@ TEST_F(KeyPress, PressPlusEqualDontReleaseBeforePress) {
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
|
|
|
key_plus.release();
|
|
|
- // BUG: Should really still return KC_EQL, but this is fine too
|
|
|
- // It's also called twice for some reason
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(2);
|
|
|
+ // BUG: Should really still return KC_EQUAL, but this is fine too
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(1);
|
|
|
run_one_scan_loop();
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
|
|
|
key_eql.release();
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0);
|
|
|
run_one_scan_loop();
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
}
|
|
@@ -253,12 +252,12 @@ TEST_F(KeyPress, PressEqualPlusReleaseBeforePress) {
|
|
|
TestDriver driver;
|
|
|
InSequence s;
|
|
|
auto key_plus = KeymapKey(0, 1, 1, KC_PLUS);
|
|
|
- auto key_eql = KeymapKey(0, 0, 1, KC_EQL);
|
|
|
+ auto key_eql = KeymapKey(0, 0, 1, KC_EQUAL);
|
|
|
|
|
|
set_keymap({key_plus, key_eql});
|
|
|
|
|
|
key_eql.press();
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_EQL)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_EQUAL)));
|
|
|
run_one_scan_loop();
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
|
|
@@ -268,13 +267,13 @@ TEST_F(KeyPress, PressEqualPlusReleaseBeforePress) {
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
|
|
|
key_plus.press();
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)));
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_EQL)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LEFT_SHIFT)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LEFT_SHIFT, KC_EQUAL)));
|
|
|
run_one_scan_loop();
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
|
|
|
key_plus.release();
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LEFT_SHIFT)));
|
|
|
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
|
|
|
run_one_scan_loop();
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
@@ -284,12 +283,12 @@ TEST_F(KeyPress, PressEqualPlusDontReleaseBeforePress) {
|
|
|
TestDriver driver;
|
|
|
InSequence s;
|
|
|
auto key_plus = KeymapKey(0, 1, 1, KC_PLUS);
|
|
|
- auto key_eql = KeymapKey(0, 0, 1, KC_EQL);
|
|
|
+ auto key_eql = KeymapKey(0, 0, 1, KC_EQUAL);
|
|
|
|
|
|
set_keymap({key_plus, key_eql});
|
|
|
|
|
|
key_eql.press();
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_EQL)));
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_EQUAL)));
|
|
|
run_one_scan_loop();
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
|
|
@@ -309,9 +308,7 @@ TEST_F(KeyPress, PressEqualPlusDontReleaseBeforePress) {
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
|
|
|
key_plus.release();
|
|
|
- // This report is not needed
|
|
|
- EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LEFT_SHIFT)));
|
|
|
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
|
|
|
run_one_scan_loop();
|
|
|
testing::Mock::VerifyAndClearExpectations(&driver);
|
|
|
-}
|
|
|
+}
|