|
@@ -39,6 +39,9 @@ TEST_F(KeyPress, CorrectKeyIsReportedWhenPressed) {
|
|
|
press_key(0, 0);
|
|
|
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_A)));
|
|
|
keyboard_task();
|
|
|
+ release_key(0, 0);
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
|
|
|
+ keyboard_task();
|
|
|
}
|
|
|
|
|
|
TEST_F(KeyPress, CorrectKeysAreReportedWhenTwoKeysArePressed) {
|
|
@@ -50,12 +53,18 @@ TEST_F(KeyPress, CorrectKeysAreReportedWhenTwoKeysArePressed) {
|
|
|
keyboard_task();
|
|
|
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B, KC_C)));
|
|
|
keyboard_task();
|
|
|
+ release_key(1, 0);
|
|
|
+ release_key(0, 3);
|
|
|
+ //Note that the first key released is the first one in the matrix order
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_C)));
|
|
|
+ keyboard_task();
|
|
|
+ EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
|
|
|
+ keyboard_task();
|
|
|
}
|
|
|
|
|
|
TEST_F(KeyPress, ANonMappedKeyDoesNothing) {
|
|
|
TestDriver driver;
|
|
|
press_key(2, 0);
|
|
|
- //Note that QMK only processes one key at a time
|
|
|
EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0);
|
|
|
keyboard_task();
|
|
|
keyboard_task();
|