summaryrefslogtreecommitdiffstats
path: root/python/tests/test-client.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/tests/test-client.py')
-rw-r--r--python/tests/test-client.py28
1 files changed, 28 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"))
+