From fefc31806efd7fb045e66449ae2264bea8fd0f7a Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Fri, 24 Apr 2015 17:21:18 -0500 Subject: [PATCH] test: Add negative test for libinput_device_keyboard_has_key() Ensure we get a -1 return for non-keyboard devices. Signed-off-by: Derek Foreman Reviewed-by: Peter Hutterer Signed-off-by: Peter Hutterer --- test/keyboard.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/test/keyboard.c b/test/keyboard.c index a477cfb7..508362bb 100644 --- a/test/keyboard.c +++ b/test/keyboard.c @@ -309,6 +309,24 @@ START_TEST(keyboard_has_key) } END_TEST +START_TEST(keyboard_keys_bad_device) +{ + struct litest_device *dev = litest_current_device(); + struct libinput_device *device = dev->libinput_device; + unsigned int code; + int has_key; + + if (libinput_device_has_capability(device, + LIBINPUT_DEVICE_CAP_KEYBOARD)) + return; + + for (code = 0; code < KEY_CNT; code++) { + has_key = libinput_device_keyboard_has_key(device, code); + ck_assert_int_eq(has_key, -1); + } +} +END_TEST + int main(int argc, char **argv) { @@ -316,6 +334,7 @@ main(int argc, char **argv) litest_add_no_device("keyboard:key counting", keyboard_ignore_no_pressed_release); litest_add_no_device("keyboard:key counting", keyboard_key_auto_release); litest_add("keyboard:keys", keyboard_has_key, LITEST_KEYS, LITEST_ANY); + litest_add("keyboard:keys", keyboard_keys_bad_device, LITEST_ANY, LITEST_ANY); return litest_run(argc, argv); }