summaryrefslogtreecommitdiffstats
path: root/test/python/test-service.py
diff options
context:
space:
mode:
authorJohn (J5) Palmieri <johnp@redhat.com>2005-10-14 21:44:00 +0000
committerJohn (J5) Palmieri <johnp@redhat.com>2005-10-14 21:44:00 +0000
commit0ae9f138ad4dfacbbd28abd39ce3dee66333539a (patch)
treec2796ea79ca9e0eab9e5b4fa3be416a4b0394007 /test/python/test-service.py
parent7667a2ae4ae4912f8130895e828d1dfb87050870 (diff)
* python/dbus_bindings.pyx (MessageIter::append_strict): check for
STRUCT_BEGIN not TYPE_STRUCT in indicate we are marshalling a struct * python/service.py (Object::_message_cb): handle exceptions correctly by sending them over the wire to the calling app. This makes sure the client returns immediately instead of waiting the 15 seconds to timeout. * test/python/test-client.py (TestDBusBindings::testBenchmarkIntrospect): Add a test to benchmark how long it takes to introspect a service and call a method which returns a large element (pretty fast) * test/python/test-service.py (TestObject::GetComplexArray): new test method which pushes a lot of data
Diffstat (limited to 'test/python/test-service.py')
-rwxr-xr-xtest/python/test-service.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/test/python/test-service.py b/test/python/test-service.py
index 8f3cb7af..36c2df7c 100755
--- a/test/python/test-service.py
+++ b/test/python/test-service.py
@@ -16,6 +16,7 @@ if not dbus.__file__.startswith(pydir):
import dbus.service
import dbus.glib
import gobject
+import random
class TestObject(dbus.service.Object):
def __init__(self, bus_name, object_path="/org/freedesktop/DBus/TestSuitePythonObject"):
@@ -27,6 +28,14 @@ class TestObject(dbus.service.Object):
def Echo(self, arg):
return arg
+ @dbus.service.method("org.freedesktop.DBus.TestSuiteInterface")
+ def GetComplexArray(self):
+ ret = []
+ for i in range(0,100):
+ ret.append((random.randint(0,100), random.randint(0,100), str(random.randint(0,100))))
+
+ return dbus.Array(ret, signature="(uus)")
+
session_bus = dbus.SessionBus()
name = dbus.service.BusName("org.freedesktop.DBus.TestSuitePythonService", bus=session_bus)
object = TestObject(name)