diff options
author | Fred Sundvik <fsundvik@gmail.com> | 2017-06-27 00:13:21 +0300 |
---|---|---|
committer | Jack Humbert <jack.humb@gmail.com> | 2017-07-08 21:59:51 -0400 |
commit | 72c8df1f190d34d4eb48e9f06d13c9a4de566716 (patch) | |
tree | 2f8599a7aeff25d90be729159d556622d9a373d8 /tests | |
parent | 1e4cc36e14d711d2fc755354f9b6fd80c9728882 (diff) | |
download | qmk_firmware-72c8df1f190d34d4eb48e9f06d13c9a4de566716.tar.gz qmk_firmware-72c8df1f190d34d4eb48e9f06d13c9a4de566716.zip |
A bigger test matrix, and test for unmapped keys
Diffstat (limited to 'tests')
-rw-r--r-- | tests/basic/config.h | 4 | ||||
-rw-r--r-- | tests/basic/keymap.c | 8 | ||||
-rw-r--r-- | tests/basic/keypress.cpp | 11 |
3 files changed, 18 insertions, 5 deletions
diff --git a/tests/basic/config.h b/tests/basic/config.h index 4da8d0425..a52d8a4fa 100644 --- a/tests/basic/config.h +++ b/tests/basic/config.h | |||
@@ -17,8 +17,8 @@ | |||
17 | #ifndef TESTS_BASIC_CONFIG_H_ | 17 | #ifndef TESTS_BASIC_CONFIG_H_ |
18 | #define TESTS_BASIC_CONFIG_H_ | 18 | #define TESTS_BASIC_CONFIG_H_ |
19 | 19 | ||
20 | #define MATRIX_ROWS 2 | 20 | #define MATRIX_ROWS 4 |
21 | #define MATRIX_COLS 2 | 21 | #define MATRIX_COLS 10 |
22 | 22 | ||
23 | 23 | ||
24 | #endif /* TESTS_BASIC_CONFIG_H_ */ | 24 | #endif /* TESTS_BASIC_CONFIG_H_ */ |
diff --git a/tests/basic/keymap.c b/tests/basic/keymap.c index 2afb4d6a9..c0e0dfb49 100644 --- a/tests/basic/keymap.c +++ b/tests/basic/keymap.c | |||
@@ -16,9 +16,13 @@ | |||
16 | 16 | ||
17 | #include "quantum.h" | 17 | #include "quantum.h" |
18 | 18 | ||
19 | // Don't rearrange keys as existing tests might rely on the order | ||
20 | // Col2, Row 0 has to be KC_NO, because tests rely on it | ||
19 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 21 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
20 | [0] = { | 22 | [0] = { |
21 | {KC_A, KC_B}, | 23 | {KC_A, KC_B, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO}, |
22 | {KC_C, KC_D} | 24 | {KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO}, |
25 | {KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO}, | ||
26 | {KC_C, KC_D, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO}, | ||
23 | }, | 27 | }, |
24 | }; | 28 | }; |
diff --git a/tests/basic/keypress.cpp b/tests/basic/keypress.cpp index f574481f2..2b8b96b22 100644 --- a/tests/basic/keypress.cpp +++ b/tests/basic/keypress.cpp | |||
@@ -44,10 +44,19 @@ TEST_F(KeyPress, CorrectKeyIsReportedWhenPressed) { | |||
44 | TEST_F(KeyPress, CorrectKeysAreReportedWhenTwoKeysArePressed) { | 44 | TEST_F(KeyPress, CorrectKeysAreReportedWhenTwoKeysArePressed) { |
45 | TestDriver driver; | 45 | TestDriver driver; |
46 | press_key(1, 0); | 46 | press_key(1, 0); |
47 | press_key(0, 1); | 47 | press_key(0, 3); |
48 | //Note that QMK only processes one key at a time | 48 | //Note that QMK only processes one key at a time |
49 | EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B))); | 49 | EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B))); |
50 | keyboard_task(); | 50 | keyboard_task(); |
51 | EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B, KC_C))); | 51 | EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B, KC_C))); |
52 | keyboard_task(); | 52 | keyboard_task(); |
53 | } | 53 | } |
54 | |||
55 | TEST_F(KeyPress, ANonMappedKeyDoesNothing) { | ||
56 | TestDriver driver; | ||
57 | press_key(2, 0); | ||
58 | //Note that QMK only processes one key at a time | ||
59 | EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0); | ||
60 | keyboard_task(); | ||
61 | keyboard_task(); | ||
62 | } \ No newline at end of file | ||