Commit Graph

10 Commits

Author SHA1 Message Date
Rémi Bernon 606dc246ff dinput/tests: Wait for the expected report to actually be pending.
There is a race otherwise where we try to complete a pending IRP but
because the async is writing the report from another thread we didn't
find it and instead ignored it.

Instead we need to atomically check if there was a pending IRP, and if
the queue is empty, or queue the wait.

Later, when a report is going to be marked as pending, and if there's
someone waiting for it already, we instead complete it immediately.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-11 11:40:35 +02:00
Rémi Bernon 3f290740c0 dinput/tests: Remove output and feature report buffers length checks.
They are checked against the expected packet anyway, and they otherwise
are enforced to match their specific individual report length, which we
don't have any info about here.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-03 19:03:05 +02:00
Rémi Bernon 4ee3edf98c dinput/tests: Enforce HID report descriptor buffer size.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-03 19:03:05 +02:00
Rémi Bernon c6966b5294 dinput/tests: Queue IRP when the expect ret_status is STATUS_PENDING.
And complete it on the next IOCTL_WINETEST_HID_WAIT_EXPECT ioctl.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-21 21:19:35 +02:00
Rémi Bernon 70609b4d6c dinput/tests: Add some HidD_GetPhysicalDescriptor tests.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-30 21:56:43 +02:00
Rémi Bernon d9fdde935a dinput/tests: Keep child PDO remove IRP pending until fully removed.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-24 23:22:06 +01:00
Rémi Bernon 2644f63617 dinput/tests: Create all HID devices from the Bus driver.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:51:06 +01:00
Rémi Bernon 2a52c8dcd2 dinput/tests: Create a HID device from the Bus device.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:51:02 +01:00
Rémi Bernon 709e31fffc dinput/tests: Create a child PDO from the Bus driver.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:41:50 +01:00
Rémi Bernon 657e07aea5 dinput/tests: Introduce a new Wine Test Bus driver.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:41:46 +01:00