Skip to content

Commit db29950

Browse files
author
Filip Jagodzinski
committed
Tests: USB: Use libusb0 backend on Windows
libusb0 supports all features used for testing. A newer version (libusb1) does not have a complete implementation for Windows.
1 parent 8f1bf43 commit db29950

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

TESTS/host_tests/pyusb_basic.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,14 @@
3838

3939
import struct
4040

41+
if sys.platform.startswith('win'):
42+
# Use libusb0 on Windows. libusb1 implementation for Windows
43+
# does not support all features necessary for testing.
44+
import usb.backend.libusb0
45+
USB_BACKEND = usb.backend.libusb0.get_backend()
46+
else:
47+
# Use a default backend on other platforms.
48+
USB_BACKEND = None
4149

4250
def get_interface(dev, interface, alternate=0):
4351
intf = None
@@ -314,11 +322,10 @@ def _callback_reset_support(self, key, value, timestamp):
314322
def find_device(self, serial_number):
315323
# to make it more reliable, 20 retries in 2[s]
316324
for _ in range(20):
317-
dev = usb.core.find(custom_match=TestMatch(serial_number))
325+
dev = usb.core.find(custom_match=TestMatch(serial_number), backend=USB_BACKEND)
318326
if dev is not None:
319327
break
320328
time.sleep(0.1)
321-
322329
if dev is None:
323330
self.log("Device not found")
324331
self.send_kv("failed", "0")

0 commit comments

Comments
 (0)