Browse Source

A bigger test matrix, and test for unmapped keys

pull/1484/head
Fred Sundvik 6 years ago
committed by Jack Humbert
parent
commit
72c8df1f19
3 changed files with 18 additions and 5 deletions
  1. +2
    -2
      tests/basic/config.h
  2. +6
    -2
      tests/basic/keymap.c
  3. +10
    -1
      tests/basic/keypress.cpp

+ 2
- 2
tests/basic/config.h View File

@ -17,8 +17,8 @@
#ifndef TESTS_BASIC_CONFIG_H_
#define TESTS_BASIC_CONFIG_H_
#define MATRIX_ROWS 2
#define MATRIX_COLS 2
#define MATRIX_ROWS 4
#define MATRIX_COLS 10
#endif /* TESTS_BASIC_CONFIG_H_ */

+ 6
- 2
tests/basic/keymap.c View File

@ -16,9 +16,13 @@
#include "quantum.h"
// Don't rearrange keys as existing tests might rely on the order
// Col2, Row 0 has to be KC_NO, because tests rely on it
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = {
{KC_A, KC_B},
{KC_C, KC_D}
{KC_A, KC_B, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO},
{KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO},
{KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO},
{KC_C, KC_D, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO},
},
};

+ 10
- 1
tests/basic/keypress.cpp View File

@ -44,10 +44,19 @@ TEST_F(KeyPress, CorrectKeyIsReportedWhenPressed) {
TEST_F(KeyPress, CorrectKeysAreReportedWhenTwoKeysArePressed) {
TestDriver driver;
press_key(1, 0);
press_key(0, 1);
press_key(0, 3);
//Note that QMK only processes one key at a time
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B)));
keyboard_task();
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B, KC_C)));
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();
}

Loading…
Cancel
Save