-
- Downloads
bluez: Port Bluetooth tests to use BlueZ 5
This is effectively a complete rewrite of the tests. Some of the common functionality has been split out to apertis_tests_lib. The external interfaces and behaviour of the tests should have remained unchanged. The tests needed to change considerably in structure because of the difference between how BlueZ 4 and BlueZ 5 handle device objects. BlueZ 4 only creates a device object if an adapter is paired with that device. BlueZ 5 creates it as soon as a device is discovered. Apart from that, the main differences between the two APIs are in the shift to standard D-Bus interfaces (Properties and ObjectManager) in BlueZ 5. While rewriting the tests, a lot of multi-second sleep() calls have been removed in favour of waiting for the relevant completion signals from the D-Bus API. This means some potentially unbounded waits if the Bluetooth daemon misbehaves or ends up in a state the unit test does not expect. But otherwise it means faster test execution and no failures due to races between the sleep() and the Bluetooth daemon completing an operation. [ Small updates for review comments ] Reviewed-by:Philip Withnall <philip.withnall@collabora.co.uk> Signed-off-by:
Sjoerd Simons <sjoerd.simons@collabora.co.uk> Differential Revision: https://phabricator.apertis.org/D971
Showing
- apertis_tests_lib/bluez.py 713 additions, 0 deletionsapertis_tests_lib/bluez.py
- bluez/bluez-hfp 85 additions, 259 deletionsbluez/bluez-hfp
- bluez/bluez-test 290 additions, 301 deletionsbluez/bluez-test
- bluez/pair-two 67 additions, 123 deletionsbluez/pair-two
- bluez/simple-agent 38 additions, 112 deletionsbluez/simple-agent
- bluez/test-avrcp.py 25 additions, 10 deletionsbluez/test-avrcp.py
- bluez/ubt 260 additions, 388 deletionsbluez/ubt
Loading
Please register or sign in to comment