diff options
Diffstat (limited to 'test/python/test-service.py')
-rwxr-xr-x | test/python/test-service.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/test/python/test-service.py b/test/python/test-service.py new file mode 100755 index 00000000..21d101ce --- /dev/null +++ b/test/python/test-service.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python +import sys +import os + +builddir = os.environ["DBUS_TOP_BUILDDIR"] +pydir = builddir + "/python" + +sys.path.insert(0, pydir) + +import dbus + +if not dbus.__file__.startswith(pydir): + raise Exception("DBus modules are not being picked up from the package") + +import dbus.service +import dbus.glib +import gobject + +class TestObject(dbus.service.Object): + def __init__(self, bus_name, object_path="/org/freedesktop/DBus/TestSuitePythonObject"): + dbus.service.Object.__init__(self, bus_name, object_path) + + """ Echo whatever is sent + """ + @dbus.service.method("org.freedesktop.DBus.TestSuiteInterface") + def Echo(self, arg): + return arg + +session_bus = dbus.SessionBus() +name = dbus.service.BusName("org.freedesktop.DBus.TestSuitePythonService", bus=session_bus) +object = TestObject(name) + +loop = gobject.MainLoop() +loop.run() |