Add test scripts for connecting and disconnecting networks
authorMarcel Holtmann <marcel@holtmann.org>
Tue, 30 Dec 2008 22:39:43 +0000 (23:39 +0100)
committerMarcel Holtmann <marcel@holtmann.org>
Tue, 30 Dec 2008 22:39:43 +0000 (23:39 +0100)
test/Makefile.am
test/connect-network [new file with mode: 0755]
test/disconnect-network [new file with mode: 0755]

index f39d13e..7b4c12b 100644 (file)
@@ -2,7 +2,8 @@
 EXTRA_DIST = get-state list-profiles list-connections select-connection \
                list-devices enable-device disable-device start-scanning \
                list-networks select-network disable-network create-network \
-               set-passphrase set-address simple-agent show-introspection \
-               set-policy test-manager test-compat monitor-connman
+               set-passphrase set-address set-policy test-manager \
+               connect-network disconnect-network \
+               simple-agent show-introspection test-compat monitor-connman
 
 MAINTAINERCLEANFILES = Makefile.in
diff --git a/test/connect-network b/test/connect-network
new file mode 100755 (executable)
index 0000000..8f4f26b
--- /dev/null
@@ -0,0 +1,37 @@
+#!/usr/bin/python
+
+import sys
+import dbus
+
+if (len(sys.argv) < 2):
+       print "Usage: %s <network>" % (sys.argv[0])
+       sys.exit(1)
+
+bus = dbus.SystemBus()
+
+manager = dbus.Interface(bus.get_object("org.moblin.connman", "/"),
+                                       "org.moblin.connman.Manager")
+
+properties = manager.GetProperties()
+
+for path in properties["Devices"]:
+       device = dbus.Interface(bus.get_object("org.moblin.connman", path),
+                                               "org.moblin.connman.Device")
+
+       properties = device.GetProperties()
+
+       if properties["Type"] not in ["wifi", "wimax",
+                                       "bluetooth", "cellular"]:
+               continue;
+
+       for path in properties["Networks"]:
+               network = dbus.Interface(bus.get_object("org.moblin.connman", path),
+                                               "org.moblin.connman.Network")
+
+               properties = network.GetProperties()
+
+               dev = path[path.rfind("/") + 1:]
+
+               if dev == sys.argv[1] or properties["Name"] == sys.argv[1]:
+                       print "Connecting %s" % (path)
+                       network.Connect()
diff --git a/test/disconnect-network b/test/disconnect-network
new file mode 100755 (executable)
index 0000000..8529c19
--- /dev/null
@@ -0,0 +1,37 @@
+#!/usr/bin/python
+
+import sys
+import dbus
+
+if (len(sys.argv) < 2):
+       print "Usage: %s <network>" % (sys.argv[0])
+       sys.exit(1)
+
+bus = dbus.SystemBus()
+
+manager = dbus.Interface(bus.get_object("org.moblin.connman", "/"),
+                                       "org.moblin.connman.Manager")
+
+properties = manager.GetProperties()
+
+for path in properties["Devices"]:
+       device = dbus.Interface(bus.get_object("org.moblin.connman", path),
+                                               "org.moblin.connman.Device")
+
+       properties = device.GetProperties()
+
+       if properties["Type"] not in ["wifi", "wimax",
+                                       "bluetooth", "cellular"]:
+               continue;
+
+       for path in properties["Networks"]:
+               network = dbus.Interface(bus.get_object("org.moblin.connman", path),
+                                               "org.moblin.connman.Network")
+
+               properties = network.GetProperties()
+
+               dev = path[path.rfind("/") + 1:]
+
+               if dev == sys.argv[1] or properties["Name"] == sys.argv[1]:
+                       print "Disconnecting %s" % (path)
+                       network.Disconnect()