This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Pau Espin Pedrol gerrit-no-reply at lists.osmocom.orgHello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/3129 to look at the new patch set (#2). esme: run_method_expect_failure: Check failure in server response We can now enable the esme_ms_sms test part which asserts that sending an SMS to an msisdn with unknown destination triggers an error. Change-Id: Ia2c0c325fee14143deca8310312fc530cd9ce92e --- M src/osmo_gsm_tester/esme.py M suites/aoip_smpp/esme_ms_sms.py M suites/smpp/esme_ms_sms.py 3 files changed, 21 insertions(+), 12 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/29/3129/2 diff --git a/src/osmo_gsm_tester/esme.py b/src/osmo_gsm_tester/esme.py index f92863d..5d3bf37 100644 --- a/src/osmo_gsm_tester/esme.py +++ b/src/osmo_gsm_tester/esme.py @@ -108,14 +108,26 @@ self.client.disconnect() self.connected = False - def run_method_expect_failure(self, errcode, method, *args): + # Used in 'run_method_expect_failure', defined here because lambda functions cannot contain assigments: + def trigger_message_sent(self): + self.message_sent = True + + def run_method_expect_failure(self, errcode, method, *args, check_smsc_resp=False): + old_func = self.client.message_sent_handler try: method(*args) + if check_smsc_resp: # failure is contained in SMS response to our query, wait for it + self.message_sent = False + self.client.set_message_sent_handler(self.trigger_message_sent) + event_loop.wait(self, lambda: self.message_sent == True, timeout=10) #it should not succeed, raise an exception: raise log.Error('SMPP Failure: %s should have failed with SMPP error %d (%s) but succeeded.' % (method, errcode, smpplib.consts.DESCRIPTIONS[errcode])) except smpplib.exceptions.PDUError as e: if e.args[1] != errcode: raise e + self.dbg('Expected failure triggered: %d' % errcode) + finally: + self.client.set_message_sent_handler(old_func) def sms_send(self, sms_obj): parts, encoding_flag, msg_type_flag = smpplib.gsm.make_parts(str(sms_obj)) diff --git a/suites/aoip_smpp/esme_ms_sms.py b/suites/aoip_smpp/esme_ms_sms.py index 7f9ef18..0ec757e 100755 --- a/suites/aoip_smpp/esme_ms_sms.py +++ b/suites/aoip_smpp/esme_ms_sms.py @@ -47,10 +47,9 @@ esme.sms_send(msg) wait(ms.sms_was_received, msg) -# FIXME: This test is not failing with error but succeeds, need to check why: (forward vs store policy?) -# wrong_msisdn = ms.msisdn + esme.msisdn -# print('sending third sms (with wrong msisdn %s)' % wrong_msisdn) -# msg = Sms(esme.msisdn, wrong_msisdn, 'smpp message with wrong dest') -# esme.run_method_expect_failure(SMPP_ESME_RINVDSTADR, esme.sms_send, msg) +wrong_msisdn = ms.msisdn + esme.msisdn +print('sending third sms (with wrong msisdn %s)' % wrong_msisdn) +msg = Sms(esme.msisdn, wrong_msisdn, 'smpp message with wrong dest') +esme.run_method_expect_failure(SMPP_ESME_RINVDSTADR, esme.sms_send, msg, check_smsc_resp=True) esme.disconnect() diff --git a/suites/smpp/esme_ms_sms.py b/suites/smpp/esme_ms_sms.py index bc9d7d4..ad1c58c 100755 --- a/suites/smpp/esme_ms_sms.py +++ b/suites/smpp/esme_ms_sms.py @@ -39,11 +39,9 @@ esme.sms_send(msg) wait(ms.sms_was_received, msg) - -# FIXME: This test is not failing with error but succeeds, need to check why: (forward vs store policy?) -# wrong_msisdn = ms.msisdn + esme.msisdn -# print('sending third sms (with wrong msisdn %s)' % wrong_msisdn) -# msg = Sms(esme.msisdn, wrong_msisdn, 'smpp message with wrong dest') -# esme.run_method_expect_failure(SMPP_ESME_RINVDSTADR, esme.sms_send, msg) +wrong_msisdn = ms.msisdn + esme.msisdn +print('sending third sms (with wrong msisdn %s)' % wrong_msisdn) +msg = Sms(esme.msisdn, wrong_msisdn, 'smpp message with wrong dest') +esme.run_method_expect_failure(SMPP_ESME_RINVDSTADR, esme.sms_send, msg, check_smsc_resp=True) esme.disconnect() -- To view, visit https://gerrit.osmocom.org/3129 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: Ia2c0c325fee14143deca8310312fc530cd9ce92e Gerrit-PatchSet: 2 Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol <pespin at sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr <nhofmeyr at sysmocom.de>