On Wed, Sep 17, 2014 at 03:35:31PM +0200, Hans de Goede wrote:
> Make check_2fg_scroll functionality available outside of touchpad.c ,
> no functional changes.
> 
> Signed-off-by: Hans de Goede <hdego...@redhat.com>
> ---
>  test/litest.c   | 39 +++++++++++++++++++++++++++++++++++++++
>  test/litest.h   |  1 +
>  test/touchpad.c | 49 ++++---------------------------------------------
>  3 files changed, 44 insertions(+), 45 deletions(-)
> 
> diff --git a/test/litest.c b/test/litest.c
> index cf7e692..e5092b8 100644
> --- a/test/litest.c
> +++ b/test/litest.c
> @@ -1084,3 +1084,42 @@ litest_assert_button_event(struct libinput *li, 
> unsigned int button,
>                        state);
>       libinput_event_destroy(event);
>  }
> +
> +void litest_assert_scroll(struct libinput *li, unsigned int axis, int dir)
> +{
> +     struct libinput_event *event, *next_event;
> +     struct libinput_event_pointer *ptrev;
> +
> +     event = libinput_get_event(li);
> +     next_event = libinput_get_event(li);
> +     ck_assert(next_event != NULL); /* At least 1 scroll + stop scroll */

ck_assert_notnull(), not that it makes much difference.

> +
> +     while (event) {
> +             ck_assert_int_eq(libinput_event_get_type(event),
> +                              LIBINPUT_EVENT_POINTER_AXIS);
> +             ptrev = libinput_event_get_pointer_event(event);
> +             ck_assert(ptrev != NULL);
> +             ck_assert_int_eq(libinput_event_pointer_get_axis(ptrev), axis);
> +
> +             if (next_event) {
> +                     /* Normal scroll event, check dir */
> +                     if (dir > 0) {
> +                             ck_assert_int_ge(
> +                                     
> libinput_event_pointer_get_axis_value(ptrev),
> +                                     dir);

if you use a temporary var for the axis values we can skip the
indentation/linewidth dance.

Ok, and now that I wrote this I see that's just moving the code around. so
Reviewed-by: Peter Hutterer <peter.hutte...@who-t.net>
for this one and I'll push the updates on top of it.

Cheers,
   Peter



> +                     } else {
> +                             ck_assert_int_le(
> +                                     
> libinput_event_pointer_get_axis_value(ptrev),
> +                                     dir);
> +                     }
> +             } else {
> +                     /* Last scroll event, must be 0 */
> +                     ck_assert_int_eq(
> +                             libinput_event_pointer_get_axis_value(ptrev),
> +                             0);
> +             }
> +             libinput_event_destroy(event);
> +             event = next_event;
> +             next_event = libinput_get_event(li);
> +     }
> +}
> diff --git a/test/litest.h b/test/litest.h
> index dd1386c..fdf815f 100644
> --- a/test/litest.h
> +++ b/test/litest.h
> @@ -147,6 +147,7 @@ void litest_assert_empty_queue(struct libinput *li);
>  void litest_assert_button_event(struct libinput *li,
>                               unsigned int button,
>                               enum libinput_button_state state);
> +void litest_assert_scroll(struct libinput *li, unsigned int axis, int dir);
>  
>  struct libevdev_uinput * litest_create_uinput_device(const char *name,
>                                                    struct input_id *id,
> diff --git a/test/touchpad.c b/test/touchpad.c
> index 7ff3d14..522cee6 100644
> --- a/test/touchpad.c
> +++ b/test/touchpad.c
> @@ -1346,47 +1346,6 @@ test_2fg_scroll(struct litest_device *dev, double dx, 
> double dy, int sleep)
>       libinput_dispatch(li);
>  }
>  
> -static void
> -check_2fg_scroll(struct litest_device *dev, unsigned int axis, int dir)
> -{
> -     struct libinput *li = dev->libinput;
> -     struct libinput_event *event, *next_event;
> -     struct libinput_event_pointer *ptrev;
> -
> -     event = libinput_get_event(li);
> -     next_event = libinput_get_event(li);
> -     ck_assert(next_event != NULL); /* At least 1 scroll + stop scroll */
> -
> -     while (event) {
> -             ck_assert_int_eq(libinput_event_get_type(event),
> -                              LIBINPUT_EVENT_POINTER_AXIS);
> -             ptrev = libinput_event_get_pointer_event(event);
> -             ck_assert(ptrev != NULL);
> -             ck_assert_int_eq(libinput_event_pointer_get_axis(ptrev), axis);
> -
> -             if (next_event) {
> -                     /* Normal scroll event, check dir */
> -                     if (dir > 0) {
> -                             ck_assert_int_ge(
> -                                     
> libinput_event_pointer_get_axis_value(ptrev),
> -                                     dir);
> -                     } else {
> -                             ck_assert_int_le(
> -                                     
> libinput_event_pointer_get_axis_value(ptrev),
> -                                     dir);
> -                     }
> -             } else {
> -                     /* Last scroll event, must be 0 */
> -                     ck_assert_int_eq(
> -                             libinput_event_pointer_get_axis_value(ptrev),
> -                             0);
> -             }
> -             libinput_event_destroy(event);
> -             event = next_event;
> -             next_event = libinput_get_event(li);
> -     }
> -}
> -
>  START_TEST(touchpad_2fg_scroll)
>  {
>       struct litest_device *dev = litest_current_device();
> @@ -1395,13 +1354,13 @@ START_TEST(touchpad_2fg_scroll)
>       litest_drain_events(li);
>  
>       test_2fg_scroll(dev, 0.1, 40, 0);
> -     check_2fg_scroll(dev, LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL, 10);
> +     litest_assert_scroll(li, LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL, 10);
>       test_2fg_scroll(dev, 0.1, -40, 0);
> -     check_2fg_scroll(dev, LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL, -10);
> +     litest_assert_scroll(li, LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL, -10);
>       test_2fg_scroll(dev, 40, 0.1, 0);
> -     check_2fg_scroll(dev, LIBINPUT_POINTER_AXIS_SCROLL_HORIZONTAL, 10);
> +     litest_assert_scroll(li, LIBINPUT_POINTER_AXIS_SCROLL_HORIZONTAL, 10);
>       test_2fg_scroll(dev, -40, 0.1, 0);
> -     check_2fg_scroll(dev, LIBINPUT_POINTER_AXIS_SCROLL_HORIZONTAL, -10);
> +     litest_assert_scroll(li, LIBINPUT_POINTER_AXIS_SCROLL_HORIZONTAL, -10);
>  
>       /* 2fg scroll smaller than the threshold should not generate events */
>       test_2fg_scroll(dev, 0.1, 0.1, 200);
> -- 
> 2.1.0
> 
> _______________________________________________
> wayland-devel mailing list
> wayland-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel
> 
_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to