diff options
author | Marijn Suijten <marijns95@gmail.com> | 2021-01-22 22:52:47 +0100 |
---|---|---|
committer | Marijn Suijten <marijns95@gmail.com> | 2021-02-02 18:23:19 +0100 |
commit | 8e5b1d6b4652c5144ca5dfc768997a53a46a7ad1 (patch) | |
tree | e77e31736b2b0e707638de968eb05667111909d3 | |
parent | 15329e840ca71c6cfeed230ebdd042523a65aa88 (diff) | |
download | upower-8e5b1d6b4652c5144ca5dfc768997a53a46a7ad1.tar.gz |
tests: Add test cases for Bluetooth device classes
-rwxr-xr-x | src/linux/integration-test | 110 |
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) # |