On Tue, 20 Jul 2021, Arkadiusz Hiler wrote: [...]
Yes. I am already looking into this + other flaky dinput tests that fail in a similar way.
Thanks!
Turns out that on Windows dinput sometimes just drops key events injected via SendInput() / keybd_event().
Is it all Windows versions? This one failure seemed to only happen on one Windows 8.1 VM (but maybe the others just got lucky so far).
[...]
The only reliable solution seems to be checking if the device has received any data via GetDeviceData(), and if we don't see any events there then we can win_skip(). AFAIU it will fail under Wine but just skip on Windows.
Yes. win_skip() skips on Windows and fails in Wine.
The tests would still have sporadic skips and I am not sure if this is any better than sporadic failures. Do we track those? This also creates room for breaking tests on Window without noticing...
We don't really track skips. They are reported on the test result pages (they are the blue bars) but are not considered to be an issue as there are many legitimate reasons for skipping a test (e.g. if the API is not implemented, or if it tests a device which is not present).
https://test.winehq.org/data/d60c450c7be196c2072f74e34f7760d39e3bad32/index_...