aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2012-08-24 08:39:07 -0500
committerDan Williams <dcbw@redhat.com>2012-08-24 08:42:28 -0500
commitecdb5191aad98aa623dde8cce6548305c4e282c8 (patch)
treee202934ef3380392e02f28d842feba4824cf3dda
parent4a788333dd1dd55d7e4b6bea8cab02f0195e0346 (diff)
test: add utility to force a modem disconnect
-rw-r--r--test/Makefile.am1
-rwxr-xr-xtest/disconnect.py30
2 files changed, 31 insertions, 0 deletions
diff --git a/test/Makefile.am b/test/Makefile.am
index 6fcefc25..146f8827 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -22,6 +22,7 @@ EXTRA_DIST = \
mm-test.py \
disable.py \
enable.py \
+ disconnect.py \
info.py \
list-modems.py \
location.py \
diff --git a/test/disconnect.py b/test/disconnect.py
new file mode 100755
index 00000000..21522353
--- /dev/null
+++ b/test/disconnect.py
@@ -0,0 +1,30 @@
+#!/usr/bin/python
+# -*- Mode: python; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details:
+#
+# Copyright (C) 2009 - 2010 Red Hat, Inc.
+#
+
+import sys, dbus
+
+MM_DBUS_SERVICE='org.freedesktop.ModemManager'
+MM_DBUS_PATH='/org/freedesktop/ModemManager'
+MM_DBUS_INTERFACE_MODEM='org.freedesktop.ModemManager.Modem'
+
+bus = dbus.SystemBus()
+objpath = sys.argv[1]
+if objpath[:1] != '/':
+ objpath = "/org/freedesktop/ModemManager/Modems/" + str(objpath)
+proxy = bus.get_object(MM_DBUS_SERVICE, objpath)
+modem = dbus.Interface(proxy, dbus_interface=MM_DBUS_INTERFACE_MODEM)
+modem.Disconnect ()
+