dundee: Watch for signals only on DUNDEE_SERVICE
[framework/connectivity/connman.git] / test / test-manager
1 #!/usr/bin/python
2
3 import dbus
4
5 def extract_values(values):
6         val = "{"
7         for key in values.keys():
8                 val += " " + key + "="
9                 if key in ["PrefixLength"]:
10                         val += "%s" % (int(values[key]))
11                 else:
12                         if key in ["Servers", "Excludes"]:
13                                 val += extract_list(values[key])
14                         else:
15                                 val += str(values[key])
16         val += " }"
17         return val
18
19 def extract_list(list):
20         val = "["
21         for i in list:
22                 val += " " + str(i)
23         val += " ]"
24         return val
25
26 bus = dbus.SystemBus()
27
28 manager = dbus.Interface(bus.get_object("net.connman", "/"),
29                                         "net.connman.Manager")
30
31 properties = manager.GetProperties()
32
33 for key in properties.keys():
34         if key in ["OfflineMode", "SessionMode"]:
35                 print "%s" % (key)
36                 if properties[key] == dbus.Boolean(1):
37                         print "    true"
38                 else:
39                         print "    false"
40         else:
41                 print "%s" % (key)
42                 print "    %s" % (properties[key])
43
44 print ("Services")
45 services = manager.GetServices()
46
47 for (path, properties) in services:
48         print "    %s" % (path)
49         for key in properties.keys():
50                 if key in ["Available", "Remember", "Default",
51                                 "Favorite", "Immutable", "AutoConnect",
52                                         "LoginRequired",
53                                         "PassphraseRequired"]:
54                         if properties[key] == dbus.Boolean(1):
55                                 val = "true"
56                         else:
57                                 val = "false"
58
59                 elif key in ["IPv4", "IPv4.Configuration",
60                                 "IPv6", "IPv6.Configuration",
61                                         "Proxy", "Proxy.Configuration",
62                                                 "Ethernet", "Provider"]:
63                         val = extract_values(properties[key])
64
65                 elif key in ["Nameservers", "Nameservers.Configuration",
66                                 "Domains", "Domains.Configuration",
67                                         "Security"]:
68                         val = extract_list(properties[key])
69
70                 elif key in ["Strength", "Priority"]:
71                         val = int(properties[key])
72
73                 else:
74                         val = str(properties[key])
75
76                 print "        %s = %s" % (key, val)
77
78 print ("Technologies")
79 technologies = manager.GetTechnologies()
80
81 for (path, properties) in technologies:
82         print "    %s" % (path)
83         for key in properties.keys():
84
85                 if key in ["Connected", "Powered", "Tethering"]:
86                         if properties[key] == dbus.Boolean(1):
87                                 val = "true"
88                         else:
89                                 val = "false"
90                 else:
91                         val = properties[key]
92
93                 print "        %s = %s" % (key, val)