diff options
author | Martin Pitt <martinpitt@gnome.org> | 2013-10-08 16:38:57 +0200 |
---|---|---|
committer | Martin Pitt <martinpitt@gnome.org> | 2013-10-08 17:06:14 +0200 |
commit | e89d04768019a3154e731067f2e88ed0b37742e1 (patch) | |
tree | c960358ad7c3660d865f62754a7842bb6d84e990 | |
parent | 03c4abbfb525528a6b2335363dea9929d8516f90 (diff) |
Linux integration tests: First test case for library
Start testing the client-side library through gobject-introspection.
This covers https://bugs.freedesktop.org/show_bug.cgi?id=70283
-rw-r--r-- | src/Makefile.am | 2 | ||||
-rwxr-xr-x | src/linux/integration-test | 21 |
2 files changed, 22 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 075ad65..1a97c17 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -137,7 +137,7 @@ endif if UP_BUILD_TESTS check-local: upowerd - env top_builddir=$(top_builddir) $(srcdir)/linux/integration-test -v + env GI_TYPELIB_PATH=$(top_builddir)/libupower-glib:$(GI_REPOSITORY_PATH) LD_LIBRARY_PATH=$(top_builddir)/libupower-glib/.libs:$(LD_LIBRARY_PATH) top_builddir=$(top_builddir) $(srcdir)/linux/integration-test -v endif endif diff --git a/src/linux/integration-test b/src/linux/integration-test index 68964ef..13d2634 100755 --- a/src/linux/integration-test +++ b/src/linux/integration-test @@ -28,6 +28,7 @@ import time try: from gi.repository import GLib from gi.repository import Gio + from gi.repository import UPowerGlib except ImportError as e: sys.stderr.write('Skipping tests, PyGobject not available for Python 3, or missing GI typelibs: %s\n' % str(e)) sys.exit(0) @@ -718,6 +719,26 @@ class Tests(unittest.TestCase): self.stop_daemon() # + # libupower-glib tests (through introspection) + # + + def test_lib_daemon_properties(self): + '''library GI: daemon properties''' + + self.start_daemon() + client = UPowerGlib.Client.new() + self.assertTrue(client.get_properties_sync(None)) + self.assertRegex(client.get_daemon_version(), '^[0-9.]+$') + self.assertIn(client.get_can_hibernate(), [False, True]) + self.assertIn(client.get_can_suspend(), [False, True]) + self.assertIn(client.get_is_docked(), [False, True]) + self.assertIn(client.get_lid_is_present(), [False, True]) + self.assertIn(client.get_lid_is_closed(), [False, True]) + self.assertEqual(client.get_on_battery(), False) + self.assertEqual(client.get_on_low_battery(), False) + + + # # Helper methods # |