All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Wagner <wagi@monom.org>
To: ofono@ofono.org
Subject: [PATCH v6 03/16] dundee: Add test scripts
Date: Mon, 02 Apr 2012 18:20:01 +0200	[thread overview]
Message-ID: <1333383614-4921-4-git-send-email-wagi@monom.org> (raw)
In-Reply-To: <1333383614-4921-1-git-send-email-wagi@monom.org>

[-- Attachment #1: Type: text/plain, Size: 4875 bytes --]

From: Daniel Wagner <daniel.wagner@bmw-carit.de>

---
 test/dundee-connect    |   20 +++++++++
 test/dundee-disconnect |   20 +++++++++
 test/monitor-dundee    |  109 ++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 149 insertions(+)
 create mode 100755 test/dundee-connect
 create mode 100755 test/dundee-disconnect
 create mode 100755 test/monitor-dundee

diff --git a/test/dundee-connect b/test/dundee-connect
new file mode 100755
index 0000000..6cbc629
--- /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.Connect()
diff --git a/test/dundee-disconnect b/test/dundee-disconnect
new file mode 100755
index 0000000..e67d8cd
--- /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.Disconnect()
diff --git a/test/monitor-dundee b/test/monitor-dundee
new file mode 100755
index 0000000..cf96ceb
--- /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()
-- 
1.7.10.rc3.1.gb3065


  parent reply	other threads:[~2012-04-02 16:20 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-02 16:19 [PATCH v6 00/16] Add DUN support Daniel Wagner
2012-04-02 16:19 ` [PATCH v6 01/16] bluetooth: Add Serial interface definition Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 02/16] dundee: Add documentation Daniel Wagner
2012-04-02 16:20 ` Daniel Wagner [this message]
2012-04-23 10:13   ` [PATCH v6 03/16] dundee: Add test scripts Zheng, Wu
2012-04-24 12:33     ` Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 04/16] dundee: Add skeleton implementation Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 05/16] dundee: Add D-Bus error messages Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 06/16] dundee: Add D-Bus configuration file Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 07/16] dundee: Add systemd " Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 08/16] dundee: Add Manager interface Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 09/16] dundee: Add skeleton implementation for device Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 10/16] dundee: Manager append devices Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 11/16] dundee: Add callback helpers Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 12/16] dundee: Add device un/register Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 13/16] dundee: Add driver helper functions Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 14/16] dundee: Add device D-Bus interface Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 15/16] dundee: Add PPP handling code to device Daniel Wagner
2012-04-02 16:20 ` [PATCH v6 16/16] dundee: Add Bluetooth DUN driver Daniel Wagner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1333383614-4921-4-git-send-email-wagi@monom.org \
    --to=wagi@monom.org \
    --cc=ofono@ofono.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.