test: add litest_is_button_event
authorPeter Hutterer <peter.hutterer@who-t.net>
Thu, 16 Apr 2015 00:42:16 +0000 (10:42 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Fri, 17 Apr 2015 02:59:22 +0000 (12:59 +1000)
Makes it easier from a caller to check for common things without all the other
boilerplate code.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
test/litest.c
test/litest.h

index 128510718a67259f0d006160d93cf87f170a8cad..2481f690c23e243a80e59ea7f1a658fc6521292c 100644 (file)
@@ -1321,16 +1321,13 @@ litest_create_uinput_device(const char *name, struct input_id *id, ...)
        return uinput;
 }
 
-void
-litest_assert_button_event(struct libinput *li, unsigned int button,
-                          enum libinput_button_state state)
+struct libinput_event_pointer*
+litest_is_button_event(struct libinput_event *event,
+                      int button,
+                      enum libinput_button_state state)
 {
-       struct libinput_event *event;
        struct libinput_event_pointer *ptrev;
 
-       litest_wait_for_event(li);
-       event = libinput_get_event(li);
-
        ck_assert(event != NULL);
        ck_assert_int_eq(libinput_event_get_type(event),
                         LIBINPUT_EVENT_POINTER_BUTTON);
@@ -1339,6 +1336,21 @@ litest_assert_button_event(struct libinput *li, unsigned int button,
                         button);
        ck_assert_int_eq(libinput_event_pointer_get_button_state(ptrev),
                         state);
+
+       return ptrev;
+}
+
+void
+litest_assert_button_event(struct libinput *li, unsigned int button,
+                          enum libinput_button_state state)
+{
+       struct libinput_event *event;
+
+       litest_wait_for_event(li);
+       event = libinput_get_event(li);
+
+       litest_is_button_event(event, button, state);
+
        libinput_event_destroy(event);
 }
 
index 8cb1121442f7e1b332b7f5d3683a6e25fc695790..ca679836a5ebd988137a098a9d050857ba1aa49d 100644 (file)
@@ -172,6 +172,10 @@ void litest_wait_for_event(struct libinput *li);
 void litest_wait_for_event_of_type(struct libinput *li, ...);
 void litest_drain_events(struct libinput *li);
 void litest_assert_empty_queue(struct libinput *li);
+struct libinput_event_pointer * litest_is_button_event(
+                      struct libinput_event *event,
+                      int button,
+                      enum libinput_button_state state);
 void litest_assert_button_event(struct libinput *li,
                                unsigned int button,
                                enum libinput_button_state state);