summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2013-07-04 11:11:51 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2013-07-04 11:11:51 +1000
commitb17ba48458654aace3170f174663a4e36b24543c (patch)
tree393836a3b49a1b3f1b9b3a701bd8a675610dbdda /test
parent07910f8bf468f70bceeb33a2d8235cfe9917da53 (diff)
downloadlibevdev-b17ba48458654aace3170f174663a4e36b24543c.tar.gz
test: add test for event values (type and code)
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'test')
-rw-r--r--test/test-event-names.c45
1 files changed, 45 insertions, 0 deletions
diff --git a/test/test-event-names.c b/test/test-event-names.c
index 001d8e3..2701de5 100644
--- a/test/test-event-names.c
+++ b/test/test-event-names.c
@@ -227,6 +227,46 @@ START_TEST(test_event_type_max)
}
END_TEST
+START_TEST(test_event_type)
+{
+ struct input_event ev;
+ int i = 0;
+
+ ev.type = EV_REL;
+
+ ck_assert_int_eq(libevdev_is_event_type(&ev, EV_REL), 1);
+ for (i = 0; i < EV_MAX; i++) {
+ if (i == ev.type)
+ continue;
+ ck_assert_int_eq(libevdev_is_event_type(&ev, i), 0);
+ }
+ ck_assert_int_eq(libevdev_is_event_type(&ev, EV_MAX + 1), 0);
+}
+END_TEST
+
+START_TEST(test_event_code)
+{
+ struct input_event ev;
+ int i = 0;
+
+ ev.type = EV_REL;
+ ev.code = REL_Y;
+
+ ck_assert_int_eq(libevdev_is_event_code(&ev, EV_REL, REL_Y), 1);
+ for (i = 0; i < EV_MAX; i++) {
+ int j;
+ if (i == ev.type || i == EV_SYN)
+ continue;
+
+ for (j = 0; j < libevdev_get_event_type_max(i); i++) {
+ ck_assert_int_eq(libevdev_is_event_code(&ev, i, j), 0);
+ }
+ }
+ ck_assert_int_eq(libevdev_is_event_code(&ev, EV_MAX + 1, ev.code), 0);
+ ck_assert_int_eq(libevdev_is_event_code(&ev, EV_REL, REL_MAX + 1), 0);
+}
+END_TEST
+
Suite *
event_name_suite(void)
{
@@ -258,6 +298,11 @@ event_name_suite(void)
tcase_add_test(tc, test_prop_name);
suite_add_tcase(s, tc);
+ tc = tcase_create("event values");
+ tcase_add_test(tc, test_event_type);
+ tcase_add_test(tc, test_event_code);
+ suite_add_tcase(s, tc);
+
return s;
}