From 40d8cbf93930696c95fd70f4c6a1d2481b7ead69 Mon Sep 17 00:00:00 2001 From: Mika Liljeberg Date: Thu, 24 Mar 2011 14:32:24 +0200 Subject: [PATCH] test: add a script to set any GPRS context property --- Makefile.am | 3 ++- test/set-context-property | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100755 test/set-context-property diff --git a/Makefile.am b/Makefile.am index b0cbcd7d..fce9cd85 100644 --- a/Makefile.am +++ b/Makefile.am @@ -506,7 +506,8 @@ test_scripts = test/backtrace \ test/test-sms \ test/test-message-waiting \ test/cdma-connman-disable \ - test/cdma-connman-enable + test/cdma-connman-enable \ + test/set-context-property if TEST testdir = $(pkglibdir)/test diff --git a/test/set-context-property b/test/set-context-property new file mode 100755 index 00000000..8ea0e3a9 --- /dev/null +++ b/test/set-context-property @@ -0,0 +1,38 @@ +#!/usr/bin/python + +import sys +import dbus + +if len(sys.argv) < 4: + print "Usage: set-context-property " + sys.exit(1) + +bus = dbus.SystemBus() + +manager = dbus.Interface(bus.get_object('org.ofono', '/'), + 'org.ofono.Manager') + +modems = manager.GetModems() + +for path, properties in modems: + if "org.ofono.ConnectionManager" not in properties["Interfaces"]: + continue + + connman = dbus.Interface(bus.get_object('org.ofono', path), + 'org.ofono.ConnectionManager') + + contexts = connman.GetContexts() + + if (len(contexts) == 0): + print "No context available" + sys.exit(1) + + path = contexts[int(sys.argv[1])][0] + context = dbus.Interface(bus.get_object('org.ofono', path), + 'org.ofono.ConnectionContext') + + try: + context.SetProperty(sys.argv[2], sys.argv[3]) + except dbus.DBusException, e: + print "Error setting context %s property %s: %s" % (path, sys.argv[2], str(e)) + exit(2)