wip
Change-Id: Icce6bd83173db86a64fa621e641131758380c7cd
diff --git a/src/osmo_gsm_tester/ofono_client.py b/src/osmo_gsm_tester/ofono_client.py
index 5f91781..a10784f 100644
--- a/src/osmo_gsm_tester/ofono_client.py
+++ b/src/osmo_gsm_tester/ofono_client.py
@@ -62,14 +62,18 @@
self.msisdn = msisdn
def imsi(self):
- return self.conf.get('imsi')
+ imsi = self.conf.get('imsi')
+ if not imsi:
+ with self:
+ raise RuntimeError('No IMSI')
+ return imsi
def ki(self):
return self.conf.get('ki')
def set_powered(self, on=True):
test.poll()
- self.dbus_obj.SetProperty('Powered', Variant('b', on))
+ self.dbus_obj().SetProperty('Powered', Variant('b', on))
test.poll()
def dbus_obj(self):
@@ -78,6 +82,7 @@
self._dbus_obj = get(self.path)
self._dbus_obj.PropertyChanged.connect(self._on_property_change)
self._on_interfaces_change(self.properties().get('Interfaces'))
+ return self._dbus_obj
def properties(self):
return self.dbus_obj().GetProperties()
@@ -107,7 +112,7 @@
def _on_interface_enabled(self, interface_name):
self.dbg('Interface enabled:', interface_name)
if interface_name == I_SMS:
- self._dbus_obj[I_SMS].IncomingMessage.connect(self._on_incoming_message)
+ self.dbus_obj()[I_SMS].IncomingMessage.connect(self._on_incoming_message)
def _on_interface_disabled(self, interface_name):
self.dbg('Interface disabled:', interface_name)
@@ -131,7 +136,7 @@
if not self.has_interface(I_SMS):
raise RuntimeError('Modem cannot send SMS, interface not active: %r' % I_SMS)
sms = Sms(self.msisdn(), to_msisdn)
- mm = self.dbus_obj[I_SMS]
+ mm = self.dbus_obj()[I_SMS]
mm.SendMessage(to_msisdn, str(sms))
return sms
diff --git a/src/osmo_gsm_tester/osmo_nitb.py b/src/osmo_gsm_tester/osmo_nitb.py
index 8fce371..4cd6055 100644
--- a/src/osmo_gsm_tester/osmo_nitb.py
+++ b/src/osmo_gsm_tester/osmo_nitb.py
@@ -95,15 +95,16 @@
OsmoNitbCtrl(self).subscriber_add(modem.imsi(), msisdn, modem.ki())
def subscriber_attached(self, *modems):
- return self.imsi_attached([m.imsi() for m in modems])
+ return self.imsi_attached(*[m.imsi() for m in modems])
def imsi_attached(self, *imsis):
attached = self.imsi_list_attached()
- return all([imsi in attached for imsi in imsis])
+ self.dbg('attached:', attached)
+ return all([(imsi in attached) for imsi in imsis])
def imsi_list_attached(self):
with self:
- OsmoNitbCtrl(self).subscriber_list_active()
+ return OsmoNitbCtrl(self).subscriber_list_active()
def running(self):
return not self.process.terminated()
@@ -133,7 +134,7 @@
else:
value = '%s,%s' % (imsi, msisdn)
- with osmo_ctrl.OsmoCtrl(self.nitb.addr(), OsmoNitbCtrl.PORT) as ctrl:
+ with self.ctrl() as ctrl:
ctrl.do_set(OsmoNitbCtrl.SUBSCR_MODIFY_VAR, value)
data = ctrl.receive()
(answer, data) = ctrl.remove_ipa_ctrl_header(data)
@@ -147,15 +148,16 @@
def subscriber_list_active(self):
var = 'subscriber-list-active-v1'
aslist_str = ""
- with osmo_ctrl.OsmoCtrl(self.nitb.addr(), OsmoNitbCtrl.PORT) as ctrl:
- self.ctrl.do_get(OsmoNitbCtrl.SUBSCR_LIST_ACTIVE_VAR)
+ with self.ctrl() as ctrl:
+ ctrl.do_get(OsmoNitbCtrl.SUBSCR_LIST_ACTIVE_VAR)
# This is legacy code from the old osmo-gsm-tester.
# looks like this doesn't work for long data.
- data = self.ctrl.receive()
+ data = ctrl.receive()
while (len(data) > 0):
- (answer, data) = self.ctrl.remove_ipa_ctrl_header(data)
- answer = answer.replace('\n', ' ')
- aslist_str = answer
+ (answer, data) = ctrl.remove_ipa_ctrl_header(data)
+ answer_str = answer.decode('utf-8')
+ answer_str = answer_str.replace('\n', ' ')
+ aslist_str = answer_str
return aslist_str
# vim: expandtab tabstop=4 shiftwidth=4