First attempt at unit tests

This commit is contained in:
Thomas Baart 2018-12-19 23:14:35 +01:00
parent c8709aac45
commit 5ec21a7822
3 changed files with 20 additions and 6 deletions

View file

@ -23,11 +23,11 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = {
// 0 1 2 3 4 5 6 7 8 9
{KC_A, KC_B, KC_NO, KC_LSFT, KC_RSFT, KC_LCTL, COMBO1, SFT_T(KC_P), M(0), 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},
// 0 1 2 3 4 5 6 7 8 9
{KC_A, KC_B, KC_NO, KC_LSFT, KC_RSFT, KC_LCTL, COMBO1, SFT_T(KC_P), M(0), KC_NO},
{KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, OSM(MOD_LSFT), 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},
},
};

View file

@ -24,7 +24,9 @@ TestDriver::TestDriver()
&TestDriver::send_keyboard,
&TestDriver::send_mouse,
&TestDriver::send_system,
&TestDriver::send_consumer
&TestDriver::send_consumer,
&TestDriver::oneshot_mods_set_kb,
&TestDriver::oneshot_mods_cleared_kb
}
{
host_set_driver(&m_driver);
@ -55,3 +57,11 @@ void TestDriver::send_system(uint16_t data) {
void TestDriver::send_consumer(uint16_t data) {
m_this->send_consumer(data);
}
void TestDriver::oneshot_mods_set_kb(uint8_t mods) {
m_this->oneshot_mods_set_kb_mock(mods);
}
void TestDriver::oneshot_mods_cleared_kb() {
m_this->oneshot_mods_cleared_kb_mock();
}

View file

@ -33,12 +33,16 @@ public:
MOCK_METHOD1(send_mouse_mock, void (report_mouse_t&));
MOCK_METHOD1(send_system_mock, void (uint16_t));
MOCK_METHOD1(send_consumer_mock, void (uint16_t));
MOCK_METHOD1(oneshot_mods_set_kb, void (uint8_t));
MOCK_METHOD0(oneshot_mods_cleared_kb, void ());
private:
static uint8_t keyboard_leds(void);
static void send_keyboard(report_keyboard_t *report);
static void send_mouse(report_mouse_t* report);
static void send_system(uint16_t data);
static void send_consumer(uint16_t data);
static void oneshot_mods_set_kb(uint8_t mods);
static void oneshot_mods_cleared_kb();
host_driver_t m_driver;
uint8_t m_leds = 0;
static TestDriver* m_this;