diff options
Diffstat (limited to 'python/tests')
| -rw-r--r-- | python/tests/test-client.py | 28 | ||||
| -rw-r--r-- | python/tests/test-server.py | 17 | 
2 files changed, 45 insertions, 0 deletions
| diff --git a/python/tests/test-client.py b/python/tests/test-client.py new file mode 100644 index 00000000..d12ee2aa --- /dev/null +++ b/python/tests/test-client.py @@ -0,0 +1,28 @@ +import dbus +import dbus_bindings + + +def TestEcho(value, should_be_equal = True): +    global remote_object +    echoed = remote_object.Echo(value) +    if type(echoed) != type(value): +        raise Exception ("Sending %s, expected echo of type %s, but got %s" % (value, type(value), type(echoed))) + +    if echoed.__class__ != value.__class__: +        raise Exception ("Sending %s, expected echo to be of class %s, but got %s" % (value, value.__class__, echoed.__class__)) + +    if should_be_equal: +        if echoed != value: +            raise Exception("Sending %s, expected echo to be the same, but was %s" % (value, echoed)) + +session_bus = dbus.SessionBus() + +remote_service = session_bus.get_service("org.designfu.Test") +remote_object = remote_service.get_object("/TestObject", "org.designfu.Test") + +TestEcho(chr(120)) +TestEcho(10) +TestEcho(39.5) +TestEcho("HelloWorld") +TestEcho(dbus_bindings.ObjectPath("/test/path")) + diff --git a/python/tests/test-server.py b/python/tests/test-server.py new file mode 100644 index 00000000..2af685bc --- /dev/null +++ b/python/tests/test-server.py @@ -0,0 +1,17 @@ +import dbus +import gtk + +class TestObject(dbus.Object): +    def __init__(self, service): +        method_list = [ self.Echo ] +        dbus.Object.__init__(self, "/TestObject", method_list, service) + +    def Echo(self, variable): +        return variable +             +session_bus = dbus.SessionBus() + +local_service = dbus.Service("org.designfu.Test", bus=session_bus) +local_object = TestObject(local_service) + +gtk.main() | 
