mirror of
https://gitlab.freedesktop.org/upower/upower.git
synced 2026-05-05 11:08:00 +02:00
Linux integration tests: Add bluetooth mouse and keyboard
These should be detected with their proper type (5/6, not 2) and not count as powering the system, i. e. their PowerSupply property should be False. This reproduces https://launchpad.net/bugs/1153488
This commit is contained in:
parent
fdc62ad245
commit
09d41eb759
1 changed files with 84 additions and 0 deletions
|
|
@ -574,6 +574,90 @@ class Tests(unittest.TestCase):
|
|||
self.assertEqual(self.get_dbus_dev_property(bat0_up, 'Energy'), 1.5)
|
||||
self.stop_daemon()
|
||||
|
||||
def test_bluetooth_mouse(self):
|
||||
'''bluetooth mouse battery'''
|
||||
|
||||
btdev = self.testbed.add_device('bluetooth',
|
||||
'usb1/bluetooth/hci0/hci0:01',
|
||||
None,
|
||||
[], [])
|
||||
|
||||
mouseinp = self.testbed.add_device(
|
||||
'input',
|
||||
'usb1/bluetooth/hci0/hci0:01/input2/mouse3',
|
||||
None,
|
||||
[], ['DEVNAME', 'input/mouse3', 'ID_INPUT_MOUSE', '1'])
|
||||
|
||||
mousebat0 = self.testbed.add_device(
|
||||
'power_supply',
|
||||
'usb1/bluetooth/hci0/hci0:01/power_supply/hid-00:11:22:33:44:55-battery',
|
||||
None,
|
||||
['type', 'Battery',
|
||||
'scope', 'Device',
|
||||
'present', '1',
|
||||
'online', '1',
|
||||
'status', 'Discharging',
|
||||
'capacity', '30',
|
||||
'model_name', 'Fancy BT mouse',
|
||||
],
|
||||
[])
|
||||
|
||||
self.start_daemon()
|
||||
devs = self.proxy.EnumerateDevices()
|
||||
self.assertEqual(len(devs), 1)
|
||||
mousebat0_up = devs[0]
|
||||
|
||||
self.assertEqual(self.get_dbus_dev_property(mousebat0_up, 'Model'), 'Fancy BT mouse')
|
||||
self.assertEqual(self.get_dbus_dev_property(mousebat0_up, 'Percentage'), 30)
|
||||
self.assertEqual(self.get_dbus_dev_property(mousebat0_up, 'PowerSupply'), False)
|
||||
# 5 == mouse
|
||||
self.assertEqual(self.get_dbus_dev_property(mousebat0_up, 'Type'), 5)
|
||||
self.assertEqual(self.get_dbus_property('OnBattery'), False)
|
||||
self.assertEqual(self.get_dbus_property('OnLowBattery'), False)
|
||||
self.stop_daemon()
|
||||
|
||||
def test_bluetooth_keyboard(self):
|
||||
'''bluetooth keyboard battery'''
|
||||
|
||||
btdev = self.testbed.add_device('bluetooth',
|
||||
'usb2/bluetooth/hci0/hci0:1',
|
||||
None,
|
||||
[], [])
|
||||
|
||||
kbdinp = self.testbed.add_device(
|
||||
'input',
|
||||
'usb2/bluetooth/hci0/hci0:1/input3/event4',
|
||||
None,
|
||||
[], ['DEVNAME', 'input/event4', 'ID_INPUT_KEYBOARD', '1'])
|
||||
|
||||
kbbat0 = self.testbed.add_device(
|
||||
'power_supply',
|
||||
'usb2/bluetooth/hci0/hci0:1/power_supply/hid-00:22:33:44:55:66-battery',
|
||||
None,
|
||||
['type', 'Battery',
|
||||
'scope', 'Device',
|
||||
'present', '1',
|
||||
'online', '1',
|
||||
'status', 'Discharging',
|
||||
'capacity', '40',
|
||||
'model_name', 'Monster Typist',
|
||||
],
|
||||
[])
|
||||
|
||||
self.start_daemon()
|
||||
devs = self.proxy.EnumerateDevices()
|
||||
self.assertEqual(len(devs), 1)
|
||||
kbdbat0_up = devs[0]
|
||||
|
||||
self.assertEqual(self.get_dbus_dev_property(kbdbat0_up, 'Model'), 'Monster Typist')
|
||||
self.assertEqual(self.get_dbus_dev_property(kbdbat0_up, 'Percentage'), 40)
|
||||
self.assertEqual(self.get_dbus_dev_property(kbdbat0_up, 'PowerSupply'), False)
|
||||
# 6 == keyboard
|
||||
self.assertEqual(self.get_dbus_dev_property(kbdbat0_up, 'Type'), 6)
|
||||
self.assertEqual(self.get_dbus_property('OnBattery'), False)
|
||||
self.assertEqual(self.get_dbus_property('OnLowBattery'), False)
|
||||
self.stop_daemon()
|
||||
|
||||
#
|
||||
# Helper methods
|
||||
#
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue