From 29c82107cc630ff5a9b22ec1106c2c9d82442e0f Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Tue, 12 Feb 2019 14:02:48 +1000 Subject: [PATCH] test: fix the tablet relative delta test These numbers just happened to add up correctly for the motion history to produce a zero delta for a diagonal movement. Fix it by adding extra events to flush out any motion history leftovers. Signed-off-by: Peter Hutterer --- test/test-tablet.c | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/test/test-tablet.c b/test/test-tablet.c index 258cdc2c..e3fd228a 100644 --- a/test/test-tablet.c +++ b/test/test-tablet.c @@ -4021,6 +4021,11 @@ START_TEST(relative_delta) litest_tablet_proximity_in(dev, 10, 10, axes); litest_drain_events(li); + /* flush the motion history */ + for (int i = 0; i < 5; i ++) + litest_tablet_motion(dev, 10 + i, 10, axes); + litest_drain_events(li); + litest_tablet_motion(dev, 20, 10, axes); libinput_dispatch(li); @@ -4033,6 +4038,11 @@ START_TEST(relative_delta) ck_assert(dy == 0.0); libinput_event_destroy(event); + /* flush the motion history */ + for (int i = 0; i < 5; i ++) + litest_tablet_motion(dev, 20 - i, 10, axes); + litest_drain_events(li); + litest_tablet_motion(dev, 5, 10, axes); libinput_dispatch(li); event = libinput_get_event(li); @@ -4044,7 +4054,12 @@ START_TEST(relative_delta) ck_assert(dy == 0.0); libinput_event_destroy(event); - litest_tablet_motion(dev, 10, 20, axes); + /* flush the motion history */ + for (int i = 0; i < 5; i ++) + litest_tablet_motion(dev, 5, 10 + i, axes); + litest_drain_events(li); + + litest_tablet_motion(dev, 5, 20, axes); libinput_dispatch(li); event = libinput_get_event(li); tev = litest_is_tablet_event(event, @@ -4055,7 +4070,13 @@ START_TEST(relative_delta) ck_assert(dy > 0.0); libinput_event_destroy(event); - litest_tablet_motion(dev, 10, 5, axes); + + /* flush the motion history */ + for (int i = 0; i < 5; i ++) + litest_tablet_motion(dev, 5, 20 - i, axes); + litest_drain_events(li); + + litest_tablet_motion(dev, 5, 10, axes); libinput_dispatch(li); event = libinput_get_event(li); tev = litest_is_tablet_event(event,