mirror of
https://gitlab.freedesktop.org/libevdev/libevdev.git
synced 2025-12-30 20:00:09 +01:00
test: add a test for uinput device properties
Specifically, test for INPUT_PROP_MAX, which is a valid property value Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
This commit is contained in:
parent
b77fea9c89
commit
e372c4a6bd
1 changed files with 46 additions and 0 deletions
|
|
@ -323,6 +323,48 @@ START_TEST(test_uinput_events)
|
|||
}
|
||||
END_TEST
|
||||
|
||||
START_TEST(test_uinput_properties)
|
||||
{
|
||||
struct libevdev *dev, *dev2;
|
||||
struct libevdev_uinput *uidev;
|
||||
int fd;
|
||||
int rc;
|
||||
const char *devnode;
|
||||
|
||||
dev = libevdev_new();
|
||||
ck_assert(dev != NULL);
|
||||
libevdev_set_name(dev, TEST_DEVICE_NAME);
|
||||
libevdev_enable_event_type(dev, EV_SYN);
|
||||
libevdev_enable_event_type(dev, EV_REL);
|
||||
libevdev_enable_event_type(dev, EV_KEY);
|
||||
libevdev_enable_event_code(dev, EV_REL, REL_X, NULL);
|
||||
libevdev_enable_event_code(dev, EV_REL, REL_Y, NULL);
|
||||
libevdev_enable_event_code(dev, EV_KEY, BTN_LEFT, NULL);
|
||||
libevdev_enable_property(dev, INPUT_PROP_BUTTONPAD);
|
||||
libevdev_enable_property(dev, INPUT_PROP_MAX);
|
||||
|
||||
rc = libevdev_uinput_create_from_device(dev, LIBEVDEV_UINPUT_OPEN_MANAGED, &uidev);
|
||||
ck_assert_int_eq(rc, 0);
|
||||
ck_assert(uidev != NULL);
|
||||
|
||||
devnode = libevdev_uinput_get_devnode(uidev);
|
||||
ck_assert(devnode != NULL);
|
||||
|
||||
fd = open(devnode, O_RDONLY);
|
||||
ck_assert_int_gt(fd, -1);
|
||||
rc = libevdev_new_from_fd(fd, &dev2);
|
||||
ck_assert_int_eq(rc, 0);
|
||||
|
||||
ck_assert(libevdev_has_property(dev2, INPUT_PROP_BUTTONPAD));
|
||||
ck_assert(libevdev_has_property(dev2, INPUT_PROP_MAX));
|
||||
|
||||
libevdev_free(dev);
|
||||
libevdev_free(dev2);
|
||||
libevdev_uinput_destroy(uidev);
|
||||
close(fd);
|
||||
}
|
||||
END_TEST
|
||||
|
||||
Suite *
|
||||
uinput_suite(void)
|
||||
{
|
||||
|
|
@ -340,5 +382,9 @@ uinput_suite(void)
|
|||
tcase_add_test(tc, test_uinput_events);
|
||||
suite_add_tcase(s, tc);
|
||||
|
||||
tc = tcase_create("device properties");
|
||||
tcase_add_test(tc, test_uinput_properties);
|
||||
suite_add_tcase(s, tc);
|
||||
|
||||
return s;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue