summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarijn Suijten <marijns95@gmail.com>2021-01-22 22:52:47 +0100
committerMarijn Suijten <marijns95@gmail.com>2021-02-02 18:23:19 +0100
commit8e5b1d6b4652c5144ca5dfc768997a53a46a7ad1 (patch)
treee77e31736b2b0e707638de968eb05667111909d3
parent15329e840ca71c6cfeed230ebdd042523a65aa88 (diff)
downloadupower-8e5b1d6b4652c5144ca5dfc768997a53a46a7ad1.tar.gz
tests: Add test cases for Bluetooth device classes
-rwxr-xr-xsrc/linux/integration-test110
1 files changed, 109 insertions, 1 deletions
diff --git a/src/linux/integration-test b/src/linux/integration-test
index dbd2814..719bbb3 100755
--- a/src/linux/integration-test
+++ b/src/linux/integration-test
@@ -88,7 +88,20 @@ BATTERY_IFACE = 'org.bluez.Battery1'
UP_DEVICE_KIND_COMPUTER,
UP_DEVICE_KIND_GAMING_INPUT,
UP_DEVICE_KIND_PEN,
- UP_DEVICE_KIND_TOUCHPAD) = range(15)
+ UP_DEVICE_KIND_TOUCHPAD,
+ UP_DEVICE_KIND_MODEM,
+ UP_DEVICE_KIND_NETWORK,
+ UP_DEVICE_KIND_HEADSET,
+ UP_DEVICE_KIND_SPEAKERS,
+ UP_DEVICE_KIND_HEADPHONES,
+ UP_DEVICE_KIND_VIDEO,
+ UP_DEVICE_KIND_OTHER_AUDIO,
+ UP_DEVICE_KIND_REMOTE_CONTROL,
+ UP_DEVICE_KIND_PRINTER,
+ UP_DEVICE_KIND_SCANNER,
+ UP_DEVICE_KIND_CAMERA,
+ UP_DEVICE_KIND_WEARABLE,
+ UP_DEVICE_KIND_TOY) = range(28)
class Tests(dbusmock.DBusTestCase):
@classmethod
@@ -1675,6 +1688,101 @@ class Tests(dbusmock.DBusTestCase):
self.assertEqual(self.get_dbus_dev_property(mouse_bat0_up, 'Type'), UP_DEVICE_KIND_UNKNOWN)
self.stop_daemon()
+ def test_bluetooth_headphones(self):
+ '''Bluetooth Headphones'''
+
+ alias = 'WH-1000XM3'
+ battery_level = 99
+ device_properties = {
+ 'Class': dbus.UInt32(0x240404, variant_level=1)
+ }
+
+ devs = self._add_bluez_battery_device(alias, device_properties, battery_level)
+ self.assertEqual(len(devs), 1)
+ bat0_up = devs[0]
+
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Model'), alias)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Percentage'), battery_level)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'PowerSupply'), False)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Type'), UP_DEVICE_KIND_HEADSET)
+ self.stop_daemon()
+
+ def test_bluetooth_wireless_earbuds(self):
+ '''Bluetooth Wireless Earbuds'''
+
+ alias = 'QCY-qs2_R'
+ battery_level = 99
+ device_properties = {
+ 'Class': dbus.UInt32(0x240418, variant_level=1)
+ }
+
+ devs = self._add_bluez_battery_device(alias, device_properties, battery_level)
+ self.assertEqual(len(devs), 1)
+ bat0_up = devs[0]
+
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Model'), alias)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Percentage'), battery_level)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'PowerSupply'), False)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Type'), UP_DEVICE_KIND_HEADPHONES)
+ self.stop_daemon()
+
+ def test_bluetooth_phone(self):
+ '''Bluetooth Phone'''
+
+ alias = 'Phone'
+ battery_level = 99
+ device_properties = {
+ 'Class': dbus.UInt32(0x5a020c, variant_level=1)
+ }
+
+ devs = self._add_bluez_battery_device(alias, device_properties, battery_level)
+ self.assertEqual(len(devs), 1)
+ bat0_up = devs[0]
+
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Model'), alias)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Percentage'), battery_level)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'PowerSupply'), False)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Type'), UP_DEVICE_KIND_PHONE)
+ self.stop_daemon()
+
+ def test_bluetooth_computer(self):
+ '''Bluetooth Computer'''
+
+ alias = 'Computer'
+ battery_level = 99
+ device_properties = {
+ 'Class': dbus.UInt32(0x6c010c, variant_level=1)
+ }
+
+ devs = self._add_bluez_battery_device(alias, device_properties, battery_level)
+ self.assertEqual(len(devs), 1)
+ bat0_up = devs[0]
+
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Model'), alias)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Percentage'), battery_level)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'PowerSupply'), False)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Type'), UP_DEVICE_KIND_COMPUTER)
+ self.stop_daemon()
+
+ def test_bluetooth_heart_rate_monitor(self):
+ '''Bluetooth Heart Rate Monitor'''
+
+ alias = 'Polar H7'
+ battery_level = 99
+ device_properties = {
+ 'Appearance': dbus.UInt16(0x0341, variant_level=1)
+ }
+
+ devs = self._add_bluez_battery_device(alias, device_properties, battery_level)
+ self.assertEqual(len(devs), 1)
+ bat0_up = devs[0]
+
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Model'), alias)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Percentage'), battery_level)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'PowerSupply'), False)
+ self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Type'), UP_DEVICE_KIND_UNKNOWN)
+ self.stop_daemon()
+
#
# libupower-glib tests (through introspection)
#