]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Improve the tests a bit
authorFred Sundvik <fsundvik@gmail.com>
Fri, 30 Jun 2017 22:25:30 +0000 (01:25 +0300)
committerJack Humbert <jack.humb@gmail.com>
Sun, 9 Jul 2017 01:59:51 +0000 (21:59 -0400)
tests/basic/keypress.cpp

index 2b8b96b228de0fa2402e213e19aef29504d8cd7f..e2cc7279fb91c0229da46f1b7af66de7f38fdddb 100644 (file)
@@ -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();