mirror of
https://gitlab.freedesktop.org/upower/upower.git
synced 2025-12-20 06:40:04 +01:00
linux: integration-test: Multiple keyboard backlight LED support
The integration test for multiple keyboard backlight support.
This commit is contained in:
parent
e0baa3fdcb
commit
afb346cf77
1 changed files with 130 additions and 0 deletions
|
|
@ -353,6 +353,45 @@ class Tests(dbusmock.DBusTestCase):
|
||||||
None,
|
None,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def get_kbd_backlight_brightness(self, kbd_backlight):
|
||||||
|
return self.dbus.call_sync(
|
||||||
|
UP,
|
||||||
|
kbd_backlight,
|
||||||
|
"org.freedesktop.UPower.KbdBacklight",
|
||||||
|
"GetBrightness",
|
||||||
|
None,
|
||||||
|
None,
|
||||||
|
Gio.DBusCallFlags.NO_AUTO_START,
|
||||||
|
-1,
|
||||||
|
None,
|
||||||
|
).unpack()[0]
|
||||||
|
|
||||||
|
def get_kbd_backlight_max_brightness(self, kbd_backlight):
|
||||||
|
return self.dbus.call_sync(
|
||||||
|
UP,
|
||||||
|
kbd_backlight,
|
||||||
|
"org.freedesktop.UPower.KbdBacklight",
|
||||||
|
"GetMaxBrightness",
|
||||||
|
None,
|
||||||
|
None,
|
||||||
|
Gio.DBusCallFlags.NO_AUTO_START,
|
||||||
|
-1,
|
||||||
|
None,
|
||||||
|
).unpack()[0]
|
||||||
|
|
||||||
|
def set_kbd_backlight_brightness(self, kbd_backlight, brightness):
|
||||||
|
self.dbus.call_sync(
|
||||||
|
UP,
|
||||||
|
kbd_backlight,
|
||||||
|
"org.freedesktop.UPower.KbdBacklight",
|
||||||
|
"SetBrightness",
|
||||||
|
GLib.Variant("(i)", (brightness,)),
|
||||||
|
None,
|
||||||
|
Gio.DBusCallFlags.NO_AUTO_START,
|
||||||
|
-1,
|
||||||
|
None,
|
||||||
|
)
|
||||||
|
|
||||||
def assertDevs(self, expected):
|
def assertDevs(self, expected):
|
||||||
devs = self.proxy.EnumerateDevices()
|
devs = self.proxy.EnumerateDevices()
|
||||||
names = sorted(n.split("/")[-1] for n in devs)
|
names = sorted(n.split("/")[-1] for n in devs)
|
||||||
|
|
@ -5728,6 +5767,97 @@ class Tests(dbusmock.DBusTestCase):
|
||||||
|
|
||||||
self.stop_daemon()
|
self.stop_daemon()
|
||||||
|
|
||||||
|
#
|
||||||
|
# Single Keyboard backlight test
|
||||||
|
#
|
||||||
|
def test_single_kbd_backlight(self):
|
||||||
|
"""Set One Keyboard backlight"""
|
||||||
|
|
||||||
|
kbd0 = self.testbed.add_device(
|
||||||
|
"leds",
|
||||||
|
"tpacpi::kbd_backlight",
|
||||||
|
None,
|
||||||
|
[
|
||||||
|
"max_brightness",
|
||||||
|
"2",
|
||||||
|
"brightness",
|
||||||
|
"1",
|
||||||
|
],
|
||||||
|
[],
|
||||||
|
)
|
||||||
|
|
||||||
|
self.start_daemon()
|
||||||
|
kbds = self.proxy.EnumerateKbdBacklights()
|
||||||
|
self.assertEqual(len(kbds), 1)
|
||||||
|
kbd0_up = kbds[0]
|
||||||
|
|
||||||
|
self.assertEqual(self.get_kbd_backlight_brightness(kbd0_up), 1)
|
||||||
|
self.assertEqual(self.get_kbd_backlight_max_brightness(kbd0_up), 2)
|
||||||
|
|
||||||
|
# brightness is in the range 0 to max_brightness
|
||||||
|
self.set_kbd_backlight_brightness(kbd0_up, 0)
|
||||||
|
with open(f"/sys/class/leds/tpacpi::kbd_backlight/brightness") as fp:
|
||||||
|
self.assertEqual(fp.read(), "0")
|
||||||
|
|
||||||
|
# value is greater than max_brightness
|
||||||
|
self.set_kbd_backlight_brightness(kbd0_up, 200)
|
||||||
|
with open(f"/sys/class/leds/tpacpi::kbd_backlight/brightness") as fp:
|
||||||
|
self.assertEqual(fp.read(), "2")
|
||||||
|
|
||||||
|
self.stop_daemon()
|
||||||
|
|
||||||
|
#
|
||||||
|
# Two Keyboard backlight test
|
||||||
|
#
|
||||||
|
def test_two_kbd_backlight(self):
|
||||||
|
"""Set Two Keyboard backlight"""
|
||||||
|
|
||||||
|
kbd0 = self.testbed.add_device(
|
||||||
|
"leds",
|
||||||
|
"tpacpi::kbd_backlight",
|
||||||
|
None,
|
||||||
|
[
|
||||||
|
"max_brightness",
|
||||||
|
"2",
|
||||||
|
"brightness",
|
||||||
|
"1",
|
||||||
|
],
|
||||||
|
[],
|
||||||
|
)
|
||||||
|
|
||||||
|
kbd1 = self.testbed.add_device(
|
||||||
|
"leds",
|
||||||
|
"Katecatacpi::kbd_backlight",
|
||||||
|
None,
|
||||||
|
[
|
||||||
|
"max_brightness",
|
||||||
|
"255",
|
||||||
|
"brightness",
|
||||||
|
"100",
|
||||||
|
],
|
||||||
|
[],
|
||||||
|
)
|
||||||
|
|
||||||
|
self.start_daemon()
|
||||||
|
kbds = self.proxy.EnumerateKbdBacklights()
|
||||||
|
self.assertEqual(len(kbds), 2)
|
||||||
|
kbd0_up = kbds[0]
|
||||||
|
kbd1_up = kbds[1]
|
||||||
|
|
||||||
|
self.assertEqual(self.get_kbd_backlight_brightness(kbd0_up), 100)
|
||||||
|
self.assertEqual(self.get_kbd_backlight_max_brightness(kbd0_up), 255)
|
||||||
|
self.set_kbd_backlight_brightness(kbd0_up, 200)
|
||||||
|
with open(f"/sys/class/leds/Katecatacpi::kbd_backlight/brightness") as fp:
|
||||||
|
self.assertEqual(fp.read(), "200")
|
||||||
|
|
||||||
|
self.assertEqual(self.get_kbd_backlight_brightness(kbd1_up), 1)
|
||||||
|
self.assertEqual(self.get_kbd_backlight_max_brightness(kbd1_up), 2)
|
||||||
|
self.set_kbd_backlight_brightness(kbd1_up, 0)
|
||||||
|
with open(f"/sys/class/leds/tpacpi::kbd_backlight/brightness") as fp:
|
||||||
|
self.assertEqual(fp.read(), "0")
|
||||||
|
|
||||||
|
self.stop_daemon()
|
||||||
|
|
||||||
#
|
#
|
||||||
# libupower-glib tests (through introspection)
|
# libupower-glib tests (through introspection)
|
||||||
#
|
#
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue