test: Adapt voice call test scripts to multi-modem

Some tests scripts were not ready to handle situations with more than
one modem present. This change fixes the scripts that handle voice
calls.
This commit is contained in:
Alfonso Sanchez-Beato 2014-06-10 10:27:16 +02:00 committed by Denis Kenzior
parent 815d62888f
commit d9f252fb61
5 changed files with 75 additions and 34 deletions

View File

@ -8,12 +8,14 @@ bus = dbus.SystemBus()
manager = dbus.Interface(bus.get_object('org.ofono', '/'), manager = dbus.Interface(bus.get_object('org.ofono', '/'),
'org.ofono.Manager') 'org.ofono.Manager')
modems = manager.GetModems() if (len(sys.argv) == 1):
modems = manager.GetModems()
path = modems[0][0] path = modems[0][0]
elif (len(sys.argv) == 2):
if (len(sys.argv) == 2):
path = sys.argv[1] path = sys.argv[1]
else:
print("Usage: %s [modem]" % (sys.argv[0]))
sys.exit(1)
manager = dbus.Interface(bus.get_object('org.ofono', path), manager = dbus.Interface(bus.get_object('org.ofono', path),
'org.ofono.VoiceCallManager') 'org.ofono.VoiceCallManager')

View File

@ -8,8 +8,14 @@ bus = dbus.SystemBus()
manager = dbus.Interface(bus.get_object('org.ofono', '/'), manager = dbus.Interface(bus.get_object('org.ofono', '/'),
'org.ofono.Manager') 'org.ofono.Manager')
modems = manager.GetModems() if (len(sys.argv) == 1):
path = modems[0][0] modems = manager.GetModems()
path = modems[0][0]
elif (len(sys.argv) == 2):
path = sys.argv[1]
else:
print("Usage: %s [modem]" % (sys.argv[0]))
sys.exit(1)
manager = dbus.Interface(bus.get_object('org.ofono', path), manager = dbus.Interface(bus.get_object('org.ofono', path),
'org.ofono.VoiceCallManager') 'org.ofono.VoiceCallManager')

View File

@ -3,24 +3,23 @@
import sys import sys
import dbus import dbus
if (len(sys.argv) != 2):
print("Usage: %s [voicecall_path]" % (sys.argv[0]))
exit(1)
bus = dbus.SystemBus() bus = dbus.SystemBus()
manager = dbus.Interface(bus.get_object('org.ofono', '/'), manager = dbus.Interface(bus.get_object('org.ofono', '/'),
'org.ofono.Manager') 'org.ofono.Manager')
modems = manager.GetModems() call = sys.argv[1]
path = modems[0][0] sep = call.find("/", 1)
path = call[0:sep]
if (len(sys.argv) == 3):
path = sys.argv[1]
callid = sys.argv[2]
else:
callid = sys.argv[1]
manager = dbus.Interface(bus.get_object('org.ofono', path), manager = dbus.Interface(bus.get_object('org.ofono', path),
'org.ofono.VoiceCallManager') 'org.ofono.VoiceCallManager')
mpty = manager.PrivateChat(callid, timeout=100) mpty = manager.PrivateChat(call, timeout=100)
for path in mpty: for path in mpty:
print(path) print(path)

View File

@ -1,5 +1,6 @@
#!/usr/bin/python3 #!/usr/bin/python3
import sys
import dbus import dbus
bus = dbus.SystemBus() bus = dbus.SystemBus()
@ -7,16 +8,32 @@ bus = dbus.SystemBus()
manager = dbus.Interface(bus.get_object('org.ofono', '/'), manager = dbus.Interface(bus.get_object('org.ofono', '/'),
'org.ofono.Manager') 'org.ofono.Manager')
modems = manager.GetModems() if (len(sys.argv) == 1):
path = None
modems = manager.GetModems()
for path_i, properties in modems:
if "org.ofono.VoiceCallManager" in properties["Interfaces"]:
path = path_i
break
if (path is None):
exit(2)
elif (len(sys.argv) == 2):
path = sys.argv[1]
else:
print("Usage: %s [modem]" % (sys.argv[0]))
exit(1)
for path, properties in modems: modemapi = dbus.Interface(bus.get_object('org.ofono', path), 'org.ofono.Modem')
print("[ %s ]" % (path)) properties = modemapi.GetProperties()
if "org.ofono.VoiceCallManager" not in properties["Interfaces"]: if "org.ofono.VoiceCallManager" not in properties["Interfaces"]:
continue print("org.ofono.VoiceCallManager not found")
exit(2)
mgr = dbus.Interface(bus.get_object('org.ofono', path), print("[ %s ]" % (path))
'org.ofono.VoiceCallManager')
mgr = dbus.Interface(bus.get_object('org.ofono', path),
'org.ofono.VoiceCallManager')
mgr.ReleaseAndAnswer()
mgr.ReleaseAndAnswer()
break

View File

@ -1,5 +1,6 @@
#!/usr/bin/python3 #!/usr/bin/python3
import sys
import dbus import dbus
bus = dbus.SystemBus() bus = dbus.SystemBus()
@ -7,16 +8,32 @@ bus = dbus.SystemBus()
manager = dbus.Interface(bus.get_object('org.ofono', '/'), manager = dbus.Interface(bus.get_object('org.ofono', '/'),
'org.ofono.Manager') 'org.ofono.Manager')
modems = manager.GetModems() if (len(sys.argv) == 1):
modem = None
modems = manager.GetModems()
for path, properties in modems:
if "org.ofono.VoiceCallManager" in properties["Interfaces"]:
modem = path
break
if (modem is None):
exit(2)
elif (len(sys.argv) == 2):
modem = sys.argv[1]
else:
print("Usage: %s [modem]" % (sys.argv[0]))
exit(1)
for path, properties in modems: modemapi = dbus.Interface(bus.get_object('org.ofono', modem), 'org.ofono.Modem')
print("[ %s ]" % (path)) properties = modemapi.GetProperties()
if "org.ofono.VoiceCallManager" not in properties["Interfaces"]: if "org.ofono.VoiceCallManager" not in properties["Interfaces"]:
continue print("org.ofono.VoiceCallManager not found")
exit(2)
mgr = dbus.Interface(bus.get_object('org.ofono', path), print("[ %s ]" % (modem))
'org.ofono.VoiceCallManager')
mgr = dbus.Interface(bus.get_object('org.ofono', modem),
'org.ofono.VoiceCallManager')
mgr.ReleaseAndSwap()
mgr.ReleaseAndSwap()
break