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 <derekf@osg.samsung.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
Derek Foreman 2015-04-24 17:21:18 -05:00 committed by Peter Hutterer
parent c14d7063b7
commit fefc31806e

View file

@ -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);
}