You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
* Fix Caps Word and Unicode Map
* Tests for Caps Word + Auto Shift and Unicode Map.
* Fix formatting
* Add additional keyboard report expectation macros
This commit defines five test utilities, EXPECT_REPORT, EXPECT_UNICODE,
EXPECT_EMPTY_REPORT, EXPECT_ANY_REPORT and EXPECT_NO_REPORT for use with
TestDriver.
EXPECT_REPORT sets a gmock expectation that a given keyboard report will
be sent. For instance,
EXPECT_REPORT(driver, (KC_LSFT, KC_A));
is shorthand for
EXPECT_CALL(driver,
send_keyboard_mock(KeyboardReport(KC_LSFT, KC_A)));
EXPECT_UNICODE sets a gmock expectation that a given Unicode code point
will be sent using UC_LNX input mode. For instance for U+2013,
EXPECT_UNICODE(driver, 0x2013);
expects the sequence of keys:
"Ctrl+Shift+U, 2, 0, 1, 3, space".
EXPECT_EMPTY_REPORT sets a gmock expectation that a given keyboard
report will be sent. For instance
EXPECT_EMPTY_REPORT(driver);
expects a single report without keypresses or modifiers.
EXPECT_ANY_REPORT sets a gmock expectation that a arbitrary keyboard
report will be sent, without matching its contents. For instance
EXPECT_ANY_REPORT(driver).Times(1);
expects a single arbitrary keyboard report will be sent.
EXPECT_NO_REPORT sets a gmock expectation that no keyboard report will
be sent at all.
* Add tap_key() and tap_keys() to TestFixture.
This commit adds a `tap_key(key)` method to TestFixture that taps a
given KeymapKey, optionally with a specified delay between press and
release.
Similarly, the method `tap_keys(key_a, key_b, key_c)` taps a sequence of
KeymapKeys.
* Use EXPECT_REPORT, tap_keys, etc. in most tests.
This commit uses EXPECT_REPORT, EXPECT_UNICODE, EXPECT_EMPTY_REPORT,
EXPECT_NO_REPORT, tap_key() and tap_keys() test utilities from the
previous two commits in most tests. Particularly the EXPECT_REPORT
macro is frequently useful and makes a nice reduction in boilerplate
needed to express many tests.
Co-authored-by: David Kosorin <david@kosorin.net>
|
4 years ago | |
|---|---|---|
| .. | ||
| audio | 4 years ago | |
| backlight | 4 years ago | |
| bootmagic | 4 years ago | |
| debounce | 4 years ago | |
| encoder/tests | 4 years ago | |
| keymap_extras | 4 years ago | |
| led_matrix | 4 years ago | |
| logging | 4 years ago | |
| painter | 4 years ago | |
| process_keycode | 4 years ago | |
| rgb_matrix | 4 years ago | |
| rgblight | 4 years ago | |
| sequencer | 4 years ago | |
| split_common | 4 years ago | |
| action.c | 4 years ago | |
| action.h | 4 years ago | |
| action_code.h | 4 years ago | |
| action_layer.c | 4 years ago | |
| action_layer.h | ||
| action_tapping.c | 4 years ago | |
| action_tapping.h | 4 years ago | |
| action_util.c | 4 years ago | |
| action_util.h | 4 years ago | |
| bitwise.c | 4 years ago | |
| bitwise.h | ||
| caps_word.c | 4 years ago | |
| caps_word.h | 4 years ago | |
| color.c | 4 years ago | |
| color.h | ||
| command.c | 4 years ago | |
| command.h | ||
| config_common.h | ||
| crc.c | ||
| crc.h | ||
| debounce.h | ||
| deferred_exec.c | 4 years ago | |
| deferred_exec.h | ||
| digitizer.c | 4 years ago | |
| digitizer.h | ||
| dip_switch.c | 4 years ago | |
| dip_switch.h | ||
| dynamic_keymap.c | 4 years ago | |
| dynamic_keymap.h | 4 years ago | |
| dynamic_macro.h | ||
| eeconfig.c | 4 years ago | |
| eeconfig.h | 4 years ago | |
| encoder.c | 4 years ago | |
| encoder.h | 4 years ago | |
| haptic.c | 4 years ago | |
| haptic.h | ||
| joystick.c | 4 years ago | |
| joystick.h | 4 years ago | |
| keyboard.c | 4 years ago | |
| keyboard.h | 4 years ago | |
| keycode.h | 4 years ago | |
| keycode_config.c | ||
| keycode_config.h | 4 years ago | |
| keycode_legacy.h | ||
| keymap.h | 4 years ago | |
| keymap_common.c | 4 years ago | |
| led.c | 4 years ago | |
| led.h | 4 years ago | |
| led_tables.c | ||
| led_tables.h | ||
| main.c | 4 years ago | |
| matrix.c | 4 years ago | |
| matrix.h | ||
| matrix_common.c | 4 years ago | |
| mousekey.c | 4 years ago | |
| mousekey.h | ||
| pointing_device.c | 4 years ago | |
| pointing_device.h | 4 years ago | |
| pointing_device_drivers.c | 4 years ago | |
| programmable_button.c | 4 years ago | |
| programmable_button.h | ||
| quantum.c | 4 years ago | |
| quantum.h | 4 years ago | |
| quantum_keycodes.h | 4 years ago | |
| quantum_keycodes_legacy.h | ||
| raw_hid.h | ||
| ring_buffer.h | 4 years ago | |
| secure.c | 4 years ago | |
| secure.h | 4 years ago | |
| send_string.c | 4 years ago | |
| send_string.h | ||
| send_string_keycodes.h | 4 years ago | |
| sync_timer.c | 4 years ago | |
| sync_timer.h | ||
| utf8.c | 4 years ago | |
| utf8.h | 4 years ago | |
| util.h | 4 years ago | |
| variable_trace.c | ||
| variable_trace.h | ||
| velocikey.c | 4 years ago | |
| velocikey.h | ||
| via.c | 4 years ago | |
| via.h | 4 years ago | |
| via_ensure_keycode.h | ||
| virtser.h | ||
| wpm.c | 4 years ago | |
| wpm.h | ||