summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorDaniel Wagner <daniel.wagner@bmw-carit.de>2012-04-02 18:16:48 +0200
committerDaniel Wagner <daniel.wagner@bmw-carit.de>2012-05-22 18:44:46 +0200
commit63ec5989c9391b50c59f8cfe3c7c1ce3a91aedaa (patch)
tree446dd01eead85135aaf87c51b31afe396fec6627 /test
parent01cbd3255052cc0eb3fb60150e002585ef0ab28e (diff)
downloadofono-63ec5989c9391b50c59f8cfe3c7c1ce3a91aedaa.tar.bz2
dundee: Add test scripts
Diffstat (limited to 'test')
-rwxr-xr-xtest/dundee-connect20
-rwxr-xr-xtest/dundee-disconnect20
-rwxr-xr-xtest/monitor-dundee109
3 files changed, 149 insertions, 0 deletions
diff --git a/test/dundee-connect b/test/dundee-connect
new file mode 100755
index 00000000..0e1ae40a
--- /dev/null
+++ b/test/dundee-connect
@@ -0,0 +1,20 @@
+#!/usr/bin/python
+
+import dbus
+import sys
+
+bus = dbus.SystemBus()
+
+if len(sys.argv) == 2:
+ path = sys.argv[1]
+else:
+ manager = dbus.Interface(bus.get_object('org.ofono.dundee', '/'),
+ 'org.ofono.dundee.Manager')
+ devices = manager.GetDevices()
+ path = devices[0][0]
+
+print "Connect device %s..." % path
+device = dbus.Interface(bus.get_object('org.ofono.dundee', path),
+ 'org.ofono.dundee.Device')
+
+device.SetProperty("Active", True)
diff --git a/test/dundee-disconnect b/test/dundee-disconnect
new file mode 100755
index 00000000..5b3113e0
--- /dev/null
+++ b/test/dundee-disconnect
@@ -0,0 +1,20 @@
+#!/usr/bin/python
+
+import dbus
+import sys
+
+bus = dbus.SystemBus()
+
+if len(sys.argv) == 2:
+ path = sys.argv[1]
+else:
+ manager = dbus.Interface(bus.get_object('org.ofono.dundee', '/'),
+ 'org.ofono.dundee.Manager')
+ devices = manager.GetDevices()
+ path = devices[0][0]
+
+print "Disonnect device %s..." % path
+device = dbus.Interface(bus.get_object('org.ofono.dundee', path),
+ 'org.ofono.dundee.Device')
+
+device.SetProperty("Active", False)
diff --git a/test/monitor-dundee b/test/monitor-dundee
new file mode 100755
index 00000000..cf96cebf
--- /dev/null
+++ b/test/monitor-dundee
@@ -0,0 +1,109 @@
+#!/usr/bin/python
+
+import gobject
+
+import dbus
+import dbus.mainloop.glib
+
+_dbus2py = {
+ dbus.String : unicode,
+ dbus.UInt32 : int,
+ dbus.Int32 : int,
+ dbus.Int16 : int,
+ dbus.UInt16 : int,
+ dbus.UInt64 : int,
+ dbus.Int64 : int,
+ dbus.Byte : int,
+ dbus.Boolean : bool,
+ dbus.ByteArray : str,
+ dbus.ObjectPath : str
+ }
+
+def dbus2py(d):
+ t = type(d)
+ if t in _dbus2py:
+ return _dbus2py[t](d)
+ if t is dbus.Dictionary:
+ return dict([(dbus2py(k), dbus2py(v)) for k, v in d.items()])
+ if t is dbus.Array and d.signature == "y":
+ return "".join([chr(b) for b in d])
+ if t is dbus.Array or t is list:
+ return [dbus2py(v) for v in d]
+ if t is dbus.Struct or t is tuple:
+ return tuple([dbus2py(v) for v in d])
+ return d
+
+def pretty(d):
+ d = dbus2py(d)
+ t = type(d)
+
+ if t in (dict, tuple, list) and len(d) > 0:
+ if t is dict:
+ d = ", ".join(["%s = %s" % (k, pretty(v))
+ for k, v in d.items()])
+ return "{ %s }" % d
+
+ d = " ".join([pretty(e) for e in d])
+
+ if t is tuple:
+ return "( %s )" % d
+
+ return str(d)
+
+def property_changed(name, value, path, interface):
+ iface = interface[interface.rfind(".") + 1:]
+ print "{%s} [%s] %s = %s" % (iface, path, name, pretty(value))
+
+def added(name, value, member, path, interface):
+ iface = interface[interface.rfind(".") + 1:]
+ print "{%s} [%s] %s %s" % (iface, member, name, pretty(value))
+
+def removed(name, member, path, interface):
+ iface = interface[interface.rfind(".") + 1:]
+ print "{%s} [%s] %s" % (iface, member, name)
+
+def event(member, path, interface):
+ iface = interface[interface.rfind(".") + 1:]
+ print "{%s} [%s] %s" % (iface, path, member)
+
+def message(msg, args, member, path, interface):
+ iface = interface[interface.rfind(".") + 1:]
+ print "{%s} [%s] %s %s (%s)" % (iface, path, member,
+ str(msg), pretty(args))
+
+def ussd(msg, member, path, interface):
+ iface = interface[interface.rfind(".") + 1:]
+ print "{%s} [%s] %s %s" % (iface, path, member, str(msg))
+
+def value(value, member, path, interface):
+ iface = interface[interface.rfind(".") + 1:]
+ print "{%s} [%s] %s %s" % (iface, path, member, str(value))
+
+if __name__ == '__main__':
+ dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
+
+ bus = dbus.SystemBus()
+
+ bus.add_signal_receiver(property_changed,
+ bus_name="org.ofono.dundee",
+ signal_name = "PropertyChanged",
+ path_keyword="path",
+ interface_keyword="interface")
+
+ bus.add_signal_receiver(added,
+ bus_name="org.ofono.dundee",
+ signal_name = "DeviceAdded",
+ member_keyword="member",
+ path_keyword="path",
+ interface_keyword="interface")
+
+ bus.add_signal_receiver(removed,
+ bus_name="org.ofono.dundee",
+ signal_name = "DeviceRemoved",
+ member_keyword="member",
+ path_keyword="path",
+ interface_keyword="interface")
+
+
+ mainloop = gobject.MainLoop()
+ mainloop.run()