On Wed, 8 Nov 2017 21:19:04 +1000, Peter Hutterer wrote: >On Tue, Nov 07, 2017 at 10:26:11PM +0100, Vicente Bergas wrote: >>Hi Peter, >> >>On Thu, Nov 2, 2017 at 2:04 AM, Peter Hutterer <peter.hutterer at who-t.net> >>wrote: >>> On Thu, Nov 02, 2017 at 12:34:01AM +0100, Vicente Bergas wrote: >>... >>>> I hope it is fixed, but not been able to run the test-suite. >>>> Please, can you confirm if the new test-suite passes? >>> >>> running the full test suite should be a simple sudo ninja test, or you run >>> it directly with >>> sudo ./build/libinput-test-suite-runner --filter-test="*sometestname*" >>> That is particularly useful when you are working on a specific feature and >>> want a quick test turnover time (the full suite can take up 20 min or >>> longer) >>> >>> https://wayland.freedesktop.org/libinput/doc/latest/test-suite.html >>> has more documentation and we can add to that what's missing >> >>I ran the test suite and it failed :( >>One of the reasons it failed is because the time parameter passed to >>fallback_interface_process is far behind the current time. >>Is that expected? >>I expected that the time parameter would be the same (or very close >>to) the current time. > >yeah, it should be. in most case you get an error message like this: >litest error libinput bug: timer event19 debounce: offset negative (-3165) >where the 'debounce' bit is the timer's name that gets wrongly set. For the >test cases it's often a sign of a missing libinput_dispatch() >e.g. for the timer_debounce it works with this diff applied: > >diff --git a/test/test-pointer.c b/test/test-pointer.c >index 25ddc765..3ce80840 100644 >--- a/test/test-pointer.c >+++ b/test/test-pointer.c >@@ -2154,6 +2154,7 @@ START_TEST(debounce_timer) > litest_event(dev, EV_SYN, SYN_REPORT, 0); > litest_event(dev, EV_KEY, BTN_LEFT, 0); > litest_event(dev, EV_SYN, SYN_REPORT, 0); >+ libinput_dispatch(li); > > litest_timeout_debounce(); > litest_drain_events(li); >
Now that I have been able to run the test suite and having your hint about libinput_dispatch, the new test suite is now fixed, it passes all bouncing tests. You can ignore v2 and go straight to v3. > >but I also see failures in e.g. trackpoint_topsoftbuttons_left_handed_both, >touchpad_left_handed and pointer_left_handed which have no obvious error in >the test case. After debugging this for way too long I discovered/remembered >that litest_button_click() forces a debounce timeout (15ms). That's likely >the source of your offsets, any test with that call can cause the test case >failure. The debounce timeout was added there because otherwise we'd have to >update a lot of test cases for debouncing - I guess with your new algorithm >we'll have to do this anyway. > >Cheers, > Peter Regards, Vicente. Vicente Bergas (1): Fix debouncing algorithm doc/button_debouncing.dox | 16 ++-- src/evdev-fallback.c | 180 +++++++++++++---------------------- src/evdev.h | 19 ---- test/litest.c | 2 +- test/litest.h | 4 +- test/test-pointer.c | 237 ++++++++++++++++------------------------------ 6 files changed, 163 insertions(+), 295 deletions(-) -- 2.15.0 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel