loopback: Improve Error Reporting when Recovering Loopback
[framework/connectivity/connman.git] / test / test-connman
index dff1a25..9a855fb 100755 (executable)
@@ -5,8 +5,8 @@ import dbus
 
 bus = dbus.SystemBus()
 
-manager = dbus.Interface(bus.get_object("org.moblin.connman", "/"),
-                                       "org.moblin.connman.Manager")
+manager = dbus.Interface(bus.get_object("net.connman", "/"),
+                                       "net.connman.Manager")
 
 if len(sys.argv) < 2:
        print "Usage: %s <command>" % (sys.argv[0])
@@ -14,6 +14,7 @@ if len(sys.argv) < 2:
        print "  state"
        print "  services"
        print "  passphrase <service> [passphrase]"
+       print "  autoconnect <service> [autoconnect]"
        print "  connect <service>"
        print "  disconnect <service>"
        print "  remove <service>"
@@ -22,113 +23,12 @@ if len(sys.argv) < 2:
        print "  enable <type>"
        print "  disable <type>"
        print "  offlinemode [on|off]"
-       print ""
-       print "  dev <interface>"
-       print "  dev <interface> scan"
-       print "  dev <interface> networks"
-       print "  dev <interface> connect <network>"
-       print "  dev <interface> disconnect [network]"
-       print "  dev <interface> powered [on|off]"
        sys.exit(1)
 
-def print_properties(path, properties):
-       print "[ %s ]" % (path)
-       for key in properties.keys():
-               if key == "Networks":
-                       continue
-
-               if key in ["Powered", "Scanning", "Connected",
-                                       "Available", "Remember", "Default"]:
-                       if properties[key] == dbus.Boolean(1):
-                               val = "true"
-                       else:
-                               val = "false"
-               elif key in ["Strength", "Priority"]:
-                       val = int(properties[key])
-               else:
-                       val = str(properties[key])
-
-               print "     %s = %s" % (key, val)
-
-       if "Networks" in properties.keys():
-               list = ""
-               for path in properties["Networks"]:
-                       val = str(path)
-                       list = list + val[val.rfind("/") + 1:] + " "
-               print "     Networks = [ %s]" % (list)
-
-def print_networks(networks):
-       for path in networks:
-               network = dbus.Interface(bus.get_object("org.moblin.connman", path),
-                                               "org.moblin.connman.Network")
-
-               properties = network.GetProperties()
-
-               if properties["Connected"] == dbus.Boolean(1):
-                       connected = "*"
-               else:
-                       connected = " "
-
-               if "Name" in properties.keys():
-                       name = properties["Name"]
-               else:
-                       name = ""
-
-               strength = int(properties["Strength"])
-
-               details = ""
-               try:
-                       details += "{" + properties["WiFi.Mode"] + "} "
-               except:
-                       pass
-               try:
-                       details += "{" + properties["WiFi.Security"] + "} "
-               except:
-                       pass
-               if "WiFi.Passphrase" in properties.keys():
-                       if properties["WiFi.Passphrase"] != "":
-                               details += "{passphrase present}"
-
-               print "%s %-26s %3d%%  %s" % (connected,
-                                               name, strength, details)
-
-def select_network(networks, name):
-       for path in networks:
-               network = dbus.Interface(bus.get_object("org.moblin.connman", path),
-                                               "org.moblin.connman.Network")
-
-               properties = network.GetProperties()
-
-               if properties["Name"] != name:
-                       continue
-
-               if properties["Connected"] == dbus.Boolean(1):
-                       print "Already connected to network %s" % (name)
-                       break
-
-               print "Selecting network %s" % (name)
-
-               network.Connect()
-
-def disconnect_network(networks, name):
-       for path in networks:
-               network = dbus.Interface(bus.get_object("org.moblin.connman", path),
-                                               "org.moblin.connman.Network")
-
-               properties = network.GetProperties()
-
-               if name != "" and properties["Name"] != name:
-                       continue
-
-               if properties["Connected"] == dbus.Boolean(1):
-                       name = properties["Name"]
-                       print "Disconnecting from network %s" % (name)
-                       network.Disconnect()
-
 def print_services(services):
        for path in services:
-               service = dbus.Interface(bus.get_object("org.moblin.connman", path),
-                                               "org.moblin.connman.Service")
+               service = dbus.Interface(bus.get_object("net.connman", path),
+                                               "net.connman.Service")
 
                properties = service.GetProperties()
 
@@ -163,8 +63,8 @@ elif sys.argv[1] in ["passphrase", "pass"]:
 
        path = "/profile/default/" + sys.argv[2]
 
-       service = dbus.Interface(bus.get_object("org.moblin.connman", path),
-                                               "org.moblin.connman.Service")
+       service = dbus.Interface(bus.get_object("net.connman", path),
+                                               "net.connman.Service")
 
        if (len(sys.argv) > 3):
                passphrase = sys.argv[3]
@@ -187,6 +87,38 @@ elif sys.argv[1] in ["passphrase", "pass"]:
 
                print "Passphrase for %s is %s" % (name, passphrase)
 
+elif sys.argv[1] in ["autoconnect", "autoconn"]:
+       if (len(sys.argv) < 3):
+               print "Need at least service parameter"
+               sys.exit(1)
+
+       path = "/profile/default/" + sys.argv[2]
+
+       service = dbus.Interface(bus.get_object("net.connman", path),
+                                               "net.connman.Service")
+
+       if (len(sys.argv) > 3):
+               flag = sys.argv[3].strip().lower()
+               autoconnect = dbus.Boolean(flag not in ['false', 'f', 'n', '0'])
+
+               service.SetProperty("AutoConnect", autoconnect);
+
+               print "Auto connect %s for %s" % (autoconnect, sys.argv[2])
+       else:
+               properties = service.GetProperties()
+
+               if "Name" in properties.keys():
+                       name = properties["Name"]
+               else:
+                       name = "{" + properties["Type"] + "}"
+
+               if "AutoConnect" in properties.keys():
+                       autoconnect = properties["AutoConnect"]
+               else:
+                       autoconnect = dbus.Boolean(0)
+
+               print "Auto connect %s for %s" % (autoconnect, name)
+
 elif sys.argv[1] in ["connect", "conn"]:
        if (len(sys.argv) < 3):
                print "Need at least service parameter"
@@ -194,8 +126,8 @@ elif sys.argv[1] in ["connect", "conn"]:
 
        path = "/profile/default/" + sys.argv[2]
 
-       service = dbus.Interface(bus.get_object("org.moblin.connman", path),
-                                               "org.moblin.connman.Service")
+       service = dbus.Interface(bus.get_object("net.connman", path),
+                                               "net.connman.Service")
 
        try:
                service.Connect(timeout=60000)
@@ -209,8 +141,8 @@ elif sys.argv[1] in ["disconnect", "disc"]:
 
        path = "/profile/default/" + sys.argv[2]
 
-       service = dbus.Interface(bus.get_object("org.moblin.connman", path),
-                                               "org.moblin.connman.Service")
+       service = dbus.Interface(bus.get_object("net.connman", path),
+                                               "net.connman.Service")
 
        try:
                service.Disconnect()
@@ -224,8 +156,8 @@ elif sys.argv[1] in ["remove"]:
 
        path = "/profile/default/" + sys.argv[2]
 
-       service = dbus.Interface(bus.get_object("org.moblin.connman", path),
-                                               "org.moblin.connman.Service")
+       service = dbus.Interface(bus.get_object("net.connman", path),
+                                               "net.connman.Service")
 
        properties = service.GetProperties()
 
@@ -269,78 +201,5 @@ elif sys.argv[1] in ["offlinemode", "flightmode"]:
                properties = manager.GetProperties()
                print "Offline mode is %s" % (properties["OfflineMode"])
 
-elif sys.argv[1] == "dev":
-       properties = manager.GetProperties()
-
-       interface = ""
-       command = ""
-       value = ""
-       found = 0
-
-       if len(sys.argv) > 2:
-               interface = sys.argv[2]
-               if len(sys.argv) > 3:
-                       command = sys.argv[3]
-                       if len(sys.argv) > 4:
-                               value = sys.argv[4]
-
-       for path in properties["Devices"]:
-               device = dbus.Interface(bus.get_object("org.moblin.connman", path),
-                                               "org.moblin.connman.Device")
-
-               properties = device.GetProperties()
-
-               if interface != "" and properties["Interface"] != interface:
-                       continue
-
-               if command == "scan":
-                       if properties["Type"] in ["wifi", "wimax"]:
-                               interface = properties["Interface"]
-                               print "Scan for device %s" % (interface)
-                               device.ProposeScan()
-                       else:
-                               print "No scanning for device %s" % (interface)
-               elif command in ["networks", "net"]:
-                       if "Networks" in properties.keys():
-                               print_networks(properties["Networks"])
-                       else:
-                               print "Device has no networks"
-               elif command in ["connect", "conn"] and value != "":
-                       if "Networks" in properties.keys():
-                               select_network(properties["Networks"], value)
-                       else:
-                               print "Device can't connect networks"
-               elif command in ["connect", "conn"]:
-                       print "Need to specify network"
-               elif command in ["disconnect", "disc"] and value != "":
-                       if "Networks" in properties.keys():
-                               disconnect_network(properties["Networks"], value)
-                       else:
-                               print "Device has no networks"
-               elif command in ["discconnect", "disc"]:
-                       if "Networks" in properties.keys():
-                               disconnect_network(properties["Networks"], "")
-                       else:
-                               print "Device has no networks"
-               elif command == "powered" and value != "":
-                       if value == "on":
-                               powered = dbus.Boolean(1)
-                       elif value == "off":
-                               powered = dbus.Boolean(0)
-                       else:
-                               powered = dbus.Boolean(value)
-                       device.SetProperty("Powered", powered)
-               elif command == "powered":
-                       interface = properties["Interface"]
-                       if properties["Powered"] == dbus.Boolean(1):
-                               powered = "on"
-                       else:
-                               powered = "off"
-                       print "Device %s is powered %s" % (interface, powered)
-               elif command == "list" or command == "":
-                       print_properties(path, properties)
-               else:
-                       print "Unknown command"
-
 else:
        print "Unknown command"