diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2018-09-13 15:07:27 +0200 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2018-09-17 10:57:50 +0000 |
commit | 43857809c1778792cc447fac89c4a0587098234d (patch) | |
tree | 386ef5d9e387a2431f16c9b003e2b6a895b0e07a /suites | |
parent | 99a6a419a263ae92466530fdf222071dd67f3705 (diff) |
Sanitize existing suite names
When first suites were added, osmo-nitb was used. Then new tests using
regular split components were added with "aoip_" prefix. At some point
it was clear that osmo-nitb was being deprecated so new tests for split
components were added without any prefix, as they are expected to be the
default one. Since most current and future development is going to be done
for split components, as well as new tests added, it makes sense to move
the few old testsuites using osmo-nitb to have all "nitb_" prefix, while
keeping the split component tests without prefix as it's the regular
network topology.
Change-Id: Idea2e053d337548e0e9b1b47441dbb262124f909
Diffstat (limited to 'suites')
-rwxr-xr-x | suites/aoip_sms/mo_mt_sms.py | 41 | ||||
-rwxr-xr-x | suites/debug/interactive.py | 77 | ||||
-rw-r--r-- | suites/debug/suite.conf | 5 | ||||
-rwxr-xr-x | suites/encryption/register_a5_0_authopt.py (renamed from suites/aoip_encryption/register_a5_0_authopt.py) | 0 | ||||
-rwxr-xr-x | suites/encryption/register_a5_0_authreq.py (renamed from suites/aoip_encryption/register_a5_0_authreq.py) | 0 | ||||
-rwxr-xr-x | suites/encryption/register_a5_1_authreq.py (renamed from suites/aoip_encryption/register_a5_1_authreq.py) | 0 | ||||
-rw-r--r-- | suites/encryption/suite.conf (renamed from suites/aoip_encryption/suite.conf) | 0 | ||||
-rw-r--r-- | suites/nitb_debug/error.py (renamed from suites/debug/error.py) | 0 | ||||
-rw-r--r-- | suites/nitb_debug/fail.py (renamed from suites/debug/fail.py) | 0 | ||||
-rw-r--r-- | suites/nitb_debug/fail_raise.py (renamed from suites/debug/fail_raise.py) | 0 | ||||
-rwxr-xr-x | suites/nitb_debug/interactive.py (renamed from suites/aoip_debug/interactive.py) | 77 | ||||
-rw-r--r-- | suites/nitb_debug/pass.py (renamed from suites/debug/pass.py) | 0 | ||||
-rw-r--r-- | suites/nitb_debug/suite.conf (renamed from suites/aoip_debug/suite.conf) | 5 | ||||
-rwxr-xr-x | suites/nitb_netreg/register.py (renamed from suites/netreg/register.py) | 0 | ||||
-rwxr-xr-x | suites/nitb_netreg/register_default.py (renamed from suites/netreg/register_default.py) | 0 | ||||
-rw-r--r-- | suites/nitb_netreg/suite.conf (renamed from suites/netreg/suite.conf) | 0 | ||||
-rwxr-xr-x | suites/nitb_smpp/esme_connect_policy_acceptall.py (renamed from suites/aoip_smpp/esme_connect_policy_acceptall.py) | 12 | ||||
-rwxr-xr-x | suites/nitb_smpp/esme_connect_policy_closed.py (renamed from suites/aoip_smpp/esme_connect_policy_closed.py) | 14 | ||||
-rwxr-xr-x | suites/nitb_smpp/esme_ms_sms_storeforward.py (renamed from suites/aoip_smpp/esme_ms_sms_storeforward.py) | 40 | ||||
-rwxr-xr-x | suites/nitb_smpp/esme_ms_sms_transaction.py (renamed from suites/aoip_smpp/esme_ms_sms_transaction.py) | 32 | ||||
-rw-r--r-- | suites/nitb_smpp/suite.conf (renamed from suites/aoip_smpp/suite.conf) | 2 | ||||
-rwxr-xr-x | suites/nitb_sms/mo_mt_sms.py | 30 | ||||
-rw-r--r-- | suites/nitb_sms/suite.conf (renamed from suites/aoip_sms/suite.conf) | 5 | ||||
-rwxr-xr-x | suites/nitb_ussd/assert_extension.py (renamed from suites/aoip_ussd/assert_extension.py) | 33 | ||||
-rw-r--r-- | suites/nitb_ussd/suite.conf (renamed from suites/aoip_ussd/suite.conf) | 5 | ||||
-rwxr-xr-x | suites/smpp/esme_connect_policy_acceptall.py | 12 | ||||
-rwxr-xr-x | suites/smpp/esme_connect_policy_closed.py | 14 | ||||
-rwxr-xr-x | suites/smpp/esme_ms_sms_storeforward.py | 40 | ||||
-rwxr-xr-x | suites/smpp/esme_ms_sms_transaction.py | 32 | ||||
-rw-r--r-- | suites/smpp/suite.conf | 2 | ||||
-rwxr-xr-x | suites/sms/mo_mt_sms.py | 35 | ||||
-rw-r--r-- | suites/sms/suite.conf | 5 | ||||
-rwxr-xr-x | suites/ussd/assert_extension.py | 33 | ||||
-rw-r--r-- | suites/ussd/suite.conf | 5 |
34 files changed, 278 insertions, 278 deletions
diff --git a/suites/aoip_sms/mo_mt_sms.py b/suites/aoip_sms/mo_mt_sms.py deleted file mode 100755 index 7654ea6..0000000 --- a/suites/aoip_sms/mo_mt_sms.py +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env python3 -from osmo_gsm_tester.testenv import * - -hlr = suite.hlr() -bts = suite.bts() -mgw_msc = suite.mgw() -mgw_bsc = suite.mgw() -stp = suite.stp() -msc = suite.msc(hlr, mgw_msc, stp) -bsc = suite.bsc(msc, mgw_bsc, stp) -ms_mo = suite.modem() -ms_mt = suite.modem() - -hlr.start() -stp.start() -msc.start() -mgw_msc.start() -mgw_bsc.start() - -bsc.bts_add(bts) -bsc.start() - -bts.start() -wait(bsc.bts_is_connected, bts) - -hlr.subscriber_add(ms_mo) -hlr.subscriber_add(ms_mt) - -ms_mo.connect(msc.mcc_mnc()) -ms_mt.connect(msc.mcc_mnc()) - -ms_mo.log_info() -ms_mt.log_info() - -print('waiting for modems to attach...') -wait(ms_mo.is_connected, msc.mcc_mnc()) -wait(ms_mt.is_connected, msc.mcc_mnc()) -wait(msc.subscriber_attached, ms_mo, ms_mt) - -sms = ms_mo.sms_send(ms_mt) -wait(ms_mt.sms_was_received, sms) diff --git a/suites/debug/interactive.py b/suites/debug/interactive.py index 595cfd9..98bf174 100755 --- a/suites/debug/interactive.py +++ b/suites/debug/interactive.py @@ -1,23 +1,43 @@ #!/usr/bin/env python3 from osmo_gsm_tester.testenv import * - -print('use resources...') -nitb = suite.nitb() +hlr = suite.hlr() bts = suite.bts() +pcu = bts.pcu() +mgw_msc = suite.mgw() +mgw_bsc = suite.mgw() +stp = suite.stp() +ggsn = suite.ggsn() +sgsn = suite.sgsn(hlr, ggsn) +msc = suite.msc(hlr, mgw_msc, stp) +bsc = suite.bsc(msc, mgw_bsc, stp) + modems = suite.modems(int(prompt('How many modems?'))) -print('start nitb and bts...') -nitb.bts_add(bts) -nitb.start() +bsc.bts_add(bts) +sgsn.bts_add(bts) + +hlr.start() +stp.start() +ggsn.start() +sgsn.start() +msc.start() +mgw_msc.start() +mgw_bsc.start() +bsc.start() + bts.start() -wait(nitb.bts_is_connected, bts) +print('Waiting for bts to connect to bsc...') +wait(bsc.bts_is_connected, bts) +print('Waiting for bts to be ready...') +wait(bts.ready_for_pcu) +pcu.start() for m in modems: - nitb.subscriber_add(m) - m.connect(nitb.mcc_mnc()) + hlr.subscriber_add(m) + m.connect(msc.mcc_mnc()) while True: - cmd = prompt('Enter command: (q)uit (s)ms (g)et-registered (w)ait-registered, call-list [<ms_msisdn>], call-dial <src_msisdn> <dst_msisdn>, call-wait-incoming <src_msisdn> <dst_msisdn>, call-answer <mt_msisdn> <call_id>, call-hangup <ms_msisdn> <call_id>, ussd <command>') + cmd = prompt('Enter command: (q)uit (s)ms (g)et-registered (w)ait-registered, call-list [<ms_msisdn>], call-dial <src_msisdn> <dst_msisdn>, call-wait-incoming <src_msisdn> <dst_msisdn>, call-answer <mt_msisdn> <call_id>, call-hangup <ms_msisdn> <call_id>, ussd <command>, data-attach, data-wait, data-detach, data-activate') cmd = cmd.strip().lower() if not cmd: @@ -31,15 +51,15 @@ while True: elif 'wait-registered'.startswith(cmd): try: for m in modems: - wait(m.is_connected, nitb.mcc_mnc()) - wait(nitb.subscriber_attached, *modems) + wait(m.is_connected, msc.mcc_mnc()) + wait(msc.subscriber_attached, *modems) except Timeout: print('Timeout while waiting for registration.') elif 'get-registered'.startswith(cmd): - print(nitb.imsi_list_attached()) + print(msc.imsi_list_attached()) print('RESULT: %s' % - ('All modems are registered.' if nitb.subscriber_attached(*modems) + ('All modems are registered.' if msc.subscriber_attached(*modems) else 'Some modem(s) not registered yet.')) elif 'sms'.startswith(cmd): @@ -107,5 +127,34 @@ while True: response = ms.ussd_send(ussd_cmd) print('modem %s: response=%r' % (ms.name(), response)) + elif cmd.startswith('data-attach'): + if len(params) != 1: + print('wrong format') + continue + for ms in modems: + print('modem %s: attach' % ms.name()) + ms.attach() + wait(ms.is_attached) + print('modem %s: attached' % ms.name()) + + elif cmd.startswith('data-detach'): + if len(params) != 1: + print('wrong format') + continue + for ms in modems: + print('modem %s: detach' % ms.name()) + ms.attach() + wait(lambda: not ms.is_attached()) + print('modem %s: detached' % ms.name()) + + elif cmd.startswith('data-activate'): + if len(params) != 1: + print('wrong format') + continue + for ms in modems: + print('modem %s: activate' % ms.name()) + response = ms.activate_context() + print('modem %s: response=%r' % (ms.name(), response)) + else: print('Unknown command: %s' % cmd) diff --git a/suites/debug/suite.conf b/suites/debug/suite.conf index adfc161..2f36e1d 100644 --- a/suites/debug/suite.conf +++ b/suites/debug/suite.conf @@ -1,10 +1,7 @@ resources: ip_address: - - times: 1 + - times: 8 bts: - times: 1 modem: - times: 4 - -defaults: - timeout: 60s diff --git a/suites/aoip_encryption/register_a5_0_authopt.py b/suites/encryption/register_a5_0_authopt.py index acbbb1f..acbbb1f 100755 --- a/suites/aoip_encryption/register_a5_0_authopt.py +++ b/suites/encryption/register_a5_0_authopt.py diff --git a/suites/aoip_encryption/register_a5_0_authreq.py b/suites/encryption/register_a5_0_authreq.py index 789ace5..789ace5 100755 --- a/suites/aoip_encryption/register_a5_0_authreq.py +++ b/suites/encryption/register_a5_0_authreq.py diff --git a/suites/aoip_encryption/register_a5_1_authreq.py b/suites/encryption/register_a5_1_authreq.py index e7aa76c..e7aa76c 100755 --- a/suites/aoip_encryption/register_a5_1_authreq.py +++ b/suites/encryption/register_a5_1_authreq.py diff --git a/suites/aoip_encryption/suite.conf b/suites/encryption/suite.conf index 18e94a3..18e94a3 100644 --- a/suites/aoip_encryption/suite.conf +++ b/suites/encryption/suite.conf diff --git a/suites/debug/error.py b/suites/nitb_debug/error.py index 032e26c..032e26c 100644 --- a/suites/debug/error.py +++ b/suites/nitb_debug/error.py diff --git a/suites/debug/fail.py b/suites/nitb_debug/fail.py index a2d9e3a..a2d9e3a 100644 --- a/suites/debug/fail.py +++ b/suites/nitb_debug/fail.py diff --git a/suites/debug/fail_raise.py b/suites/nitb_debug/fail_raise.py index c30a4f5..c30a4f5 100644 --- a/suites/debug/fail_raise.py +++ b/suites/nitb_debug/fail_raise.py diff --git a/suites/aoip_debug/interactive.py b/suites/nitb_debug/interactive.py index 98bf174..595cfd9 100755 --- a/suites/aoip_debug/interactive.py +++ b/suites/nitb_debug/interactive.py @@ -1,43 +1,23 @@ #!/usr/bin/env python3 from osmo_gsm_tester.testenv import * -hlr = suite.hlr() -bts = suite.bts() -pcu = bts.pcu() -mgw_msc = suite.mgw() -mgw_bsc = suite.mgw() -stp = suite.stp() -ggsn = suite.ggsn() -sgsn = suite.sgsn(hlr, ggsn) -msc = suite.msc(hlr, mgw_msc, stp) -bsc = suite.bsc(msc, mgw_bsc, stp) +print('use resources...') +nitb = suite.nitb() +bts = suite.bts() modems = suite.modems(int(prompt('How many modems?'))) -bsc.bts_add(bts) -sgsn.bts_add(bts) - -hlr.start() -stp.start() -ggsn.start() -sgsn.start() -msc.start() -mgw_msc.start() -mgw_bsc.start() -bsc.start() - +print('start nitb and bts...') +nitb.bts_add(bts) +nitb.start() bts.start() -print('Waiting for bts to connect to bsc...') -wait(bsc.bts_is_connected, bts) -print('Waiting for bts to be ready...') -wait(bts.ready_for_pcu) -pcu.start() +wait(nitb.bts_is_connected, bts) for m in modems: - hlr.subscriber_add(m) - m.connect(msc.mcc_mnc()) + nitb.subscriber_add(m) + m.connect(nitb.mcc_mnc()) while True: - cmd = prompt('Enter command: (q)uit (s)ms (g)et-registered (w)ait-registered, call-list [<ms_msisdn>], call-dial <src_msisdn> <dst_msisdn>, call-wait-incoming <src_msisdn> <dst_msisdn>, call-answer <mt_msisdn> <call_id>, call-hangup <ms_msisdn> <call_id>, ussd <command>, data-attach, data-wait, data-detach, data-activate') + cmd = prompt('Enter command: (q)uit (s)ms (g)et-registered (w)ait-registered, call-list [<ms_msisdn>], call-dial <src_msisdn> <dst_msisdn>, call-wait-incoming <src_msisdn> <dst_msisdn>, call-answer <mt_msisdn> <call_id>, call-hangup <ms_msisdn> <call_id>, ussd <command>') cmd = cmd.strip().lower() if not cmd: @@ -51,15 +31,15 @@ while True: elif 'wait-registered'.startswith(cmd): try: for m in modems: - wait(m.is_connected, msc.mcc_mnc()) - wait(msc.subscriber_attached, *modems) + wait(m.is_connected, nitb.mcc_mnc()) + wait(nitb.subscriber_attached, *modems) except Timeout: print('Timeout while waiting for registration.') elif 'get-registered'.startswith(cmd): - print(msc.imsi_list_attached()) + print(nitb.imsi_list_attached()) print('RESULT: %s' % - ('All modems are registered.' if msc.subscriber_attached(*modems) + ('All modems are registered.' if nitb.subscriber_attached(*modems) else 'Some modem(s) not registered yet.')) elif 'sms'.startswith(cmd): @@ -127,34 +107,5 @@ while True: response = ms.ussd_send(ussd_cmd) print('modem %s: response=%r' % (ms.name(), response)) - elif cmd.startswith('data-attach'): - if len(params) != 1: - print('wrong format') - continue - for ms in modems: - print('modem %s: attach' % ms.name()) - ms.attach() - wait(ms.is_attached) - print('modem %s: attached' % ms.name()) - - elif cmd.startswith('data-detach'): - if len(params) != 1: - print('wrong format') - continue - for ms in modems: - print('modem %s: detach' % ms.name()) - ms.attach() - wait(lambda: not ms.is_attached()) - print('modem %s: detached' % ms.name()) - - elif cmd.startswith('data-activate'): - if len(params) != 1: - print('wrong format') - continue - for ms in modems: - print('modem %s: activate' % ms.name()) - response = ms.activate_context() - print('modem %s: response=%r' % (ms.name(), response)) - else: print('Unknown command: %s' % cmd) diff --git a/suites/debug/pass.py b/suites/nitb_debug/pass.py index c07f079..c07f079 100644 --- a/suites/debug/pass.py +++ b/suites/nitb_debug/pass.py diff --git a/suites/aoip_debug/suite.conf b/suites/nitb_debug/suite.conf index 2f36e1d..adfc161 100644 --- a/suites/aoip_debug/suite.conf +++ b/suites/nitb_debug/suite.conf @@ -1,7 +1,10 @@ resources: ip_address: - - times: 8 + - times: 1 bts: - times: 1 modem: - times: 4 + +defaults: + timeout: 60s diff --git a/suites/netreg/register.py b/suites/nitb_netreg/register.py index d5fbeb7..d5fbeb7 100755 --- a/suites/netreg/register.py +++ b/suites/nitb_netreg/register.py diff --git a/suites/netreg/register_default.py b/suites/nitb_netreg/register_default.py index 545525d..545525d 100755 --- a/suites/netreg/register_default.py +++ b/suites/nitb_netreg/register_default.py diff --git a/suites/netreg/suite.conf b/suites/nitb_netreg/suite.conf index 1bb1dbb..1bb1dbb 100644 --- a/suites/netreg/suite.conf +++ b/suites/nitb_netreg/suite.conf diff --git a/suites/aoip_smpp/esme_connect_policy_acceptall.py b/suites/nitb_smpp/esme_connect_policy_acceptall.py index 168b4f3..904226b 100755 --- a/suites/aoip_smpp/esme_connect_policy_acceptall.py +++ b/suites/nitb_smpp/esme_connect_policy_acceptall.py @@ -6,11 +6,8 @@ from osmo_gsm_tester.testenv import * -hlr = suite.hlr() -mgw_msc = suite.mgw() -stp = suite.stp() -msc = suite.msc(hlr, mgw_msc, stp) -smsc = msc.smsc +nitb = suite.nitb() +smsc = nitb.smsc esme = suite.esme() # Here we deliberately omit calling smsc.esme_add() to avoid having it included @@ -18,10 +15,7 @@ esme = suite.esme() smsc.set_smsc_policy(smsc.SMSC_POLICY_ACCEPT_ALL) esme.set_smsc(smsc) -stp.start() -hlr.start() -msc.start() -mgw_msc.start() +nitb.start() # Due to accept-all policy, connect() should work even if we didn't previously # configure the esme in the smsc, no matter the system_id / password we use. diff --git a/suites/aoip_smpp/esme_connect_policy_closed.py b/suites/nitb_smpp/esme_connect_policy_closed.py index 487e5a4..eaabb3d 100755 --- a/suites/aoip_smpp/esme_connect_policy_closed.py +++ b/suites/nitb_smpp/esme_connect_policy_closed.py @@ -11,13 +11,8 @@ from osmo_gsm_tester.testenv import * SMPP_ESME_RINVPASWD = 0x0000000E SMPP_ESME_RINVSYSID = 0x0000000F -hlr = suite.hlr() -bts = suite.bts() -mgw_msc = suite.mgw() -stp = suite.stp() -msc = suite.msc(hlr, mgw_msc, stp) -smsc = msc.smsc - +nitb = suite.nitb() +smsc = nitb.smsc esme = suite.esme() esme_no_pwd = suite.esme() esme_no_pwd.set_password('') @@ -26,10 +21,7 @@ smsc.set_smsc_policy(smsc.SMSC_POLICY_CLOSED) smsc.esme_add(esme) smsc.esme_add(esme_no_pwd) -stp.start() -hlr.start() -msc.start() -mgw_msc.start() +nitb.start() log('Test with correct credentials (no password)') esme_no_pwd.connect() diff --git a/suites/aoip_smpp/esme_ms_sms_storeforward.py b/suites/nitb_smpp/esme_ms_sms_storeforward.py index 681bc29..391a040 100755 --- a/suites/aoip_smpp/esme_ms_sms_storeforward.py +++ b/suites/nitb_smpp/esme_ms_sms_storeforward.py @@ -12,46 +12,34 @@ from osmo_gsm_tester.testenv import * SMPP_ESME_RINVDSTADR = 0x0000000B -hlr = suite.hlr() +nitb = suite.nitb() bts = suite.bts() -mgw_msc = suite.mgw() -mgw_bsc = suite.mgw() -stp = suite.stp() -msc = suite.msc(hlr, mgw_msc, stp) -bsc = suite.bsc(msc, mgw_bsc, stp) -bsc.bts_add(bts) - ms = suite.modem() esme = suite.esme() -msc.smsc.esme_add(esme) -hlr.start() -stp.start() -msc.start() -mgw_msc.start() -mgw_bsc.start() -bsc.start() +print('start nitb and bts...') +nitb.bts_add(bts) +nitb.smsc.esme_add(esme) +nitb.start() bts.start() -wait(bsc.bts_is_connected, bts) +wait(nitb.bts_is_connected, bts) esme.connect() -hlr.subscriber_add(ms) +nitb.subscriber_add(ms) wrong_msisdn = ms.msisdn + esme.msisdn -print('sending sms with wrong msisdn %s, it will be stored but not delivered' % wrong_msisdn) +print('sending sms with wrong msisdn %s, it will fail' % wrong_msisdn) msg = Sms(esme.msisdn, wrong_msisdn, 'smpp message with wrong dest') -# Since osmo-msc 1e67fea7ba5c6336, we accept all sms in store&forward mode without looking at HLR -# esme.run_method_expect_failure(SMPP_ESME_RINVDSTADR, esme.sms_send_wait_resp, msg, esme.MSGMODE_STOREFORWARD) -umref_wrong = esme.sms_send_wait_resp(msg, esme.MSGMODE_STOREFORWARD, receipt=True) +esme.run_method_expect_failure(SMPP_ESME_RINVDSTADR, esme.sms_send_wait_resp, msg, esme.MSGMODE_STOREFORWARD) print('sending sms, it will be stored...') msg = Sms(esme.msisdn, ms.msisdn, 'smpp send not-yet-registered message') umref = esme.sms_send_wait_resp(msg, esme.MSGMODE_STOREFORWARD, receipt=True) print('MS registers and will receive the SMS...') -ms.connect(msc.mcc_mnc()) -wait(ms.is_connected, msc.mcc_mnc()) -wait(msc.subscriber_attached, ms) +ms.connect(nitb.mcc_mnc()) +wait(ms.is_connected, nitb.mcc_mnc()) +wait(nitb.subscriber_attached, ms) wait(ms.sms_was_received, msg) print('Waiting to receive and consume sms receipt with reference', umref) wait(esme.receipt_was_received, umref) @@ -62,8 +50,4 @@ umref = esme.sms_send_wait_resp(msg, esme.MSGMODE_STOREFORWARD, receipt=True) wait(ms.sms_was_received, msg) print('Waiting to receive and consume sms receipt with reference', umref) wait(esme.receipt_was_received, umref) - -print('Asserting the sms with wrong msisdn was not delivered', umref_wrong) -assert not esme.receipt_was_received(umref_wrong) - esme.disconnect() diff --git a/suites/aoip_smpp/esme_ms_sms_transaction.py b/suites/nitb_smpp/esme_ms_sms_transaction.py index 16b01cc..adc9dae 100755 --- a/suites/aoip_smpp/esme_ms_sms_transaction.py +++ b/suites/nitb_smpp/esme_ms_sms_transaction.py @@ -10,36 +10,26 @@ from osmo_gsm_tester.testenv import * SMPP_ESME_RINVDSTADR = 0x0000000B -hlr = suite.hlr() +nitb = suite.nitb() bts = suite.bts() -mgw_msc = suite.mgw() -mgw_bsc = suite.mgw() -stp = suite.stp() -msc = suite.msc(hlr, mgw_msc, stp) -bsc = suite.bsc(msc, mgw_bsc, stp) -bsc.bts_add(bts) - ms = suite.modem() esme = suite.esme() -msc.smsc.esme_add(esme) - -hlr.start() -stp.start() -msc.start() -mgw_msc.start() -mgw_bsc.start() -bsc.start() + +print('start nitb and bts...') +nitb.bts_add(bts) +nitb.smsc.esme_add(esme) +nitb.start() bts.start() -wait(bsc.bts_is_connected, bts) +wait(nitb.bts_is_connected, bts) esme.connect() -hlr.subscriber_add(ms) -ms.connect(msc.mcc_mnc()) +nitb.subscriber_add(ms) +ms.connect(nitb.mcc_mnc()) ms.log_info() print('waiting for modem to attach...') -wait(ms.is_connected, msc.mcc_mnc()) -wait(msc.subscriber_attached, ms) +wait(ms.is_connected, nitb.mcc_mnc()) +wait(nitb.subscriber_attached, ms) print('sending first sms...') msg = Sms(esme.msisdn, ms.msisdn, 'smpp send message') diff --git a/suites/aoip_smpp/suite.conf b/suites/nitb_smpp/suite.conf index 61e7015..eb5dc01 100644 --- a/suites/aoip_smpp/suite.conf +++ b/suites/nitb_smpp/suite.conf @@ -1,6 +1,6 @@ resources: ip_address: - - times: 6 # msc, bsc, hlr, stp, mgw*2 + - times: 1 bts: - times: 1 modem: diff --git a/suites/nitb_sms/mo_mt_sms.py b/suites/nitb_sms/mo_mt_sms.py new file mode 100755 index 0000000..10897ff --- /dev/null +++ b/suites/nitb_sms/mo_mt_sms.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python3 +from osmo_gsm_tester.testenv import * + +nitb = suite.nitb() +bts = suite.bts() +ms_mo = suite.modem() +ms_mt = suite.modem() + +print('start nitb and bts...') +nitb.bts_add(bts) +nitb.start() +bts.start() +wait(nitb.bts_is_connected, bts) + +nitb.subscriber_add(ms_mo) +nitb.subscriber_add(ms_mt) + +ms_mo.connect(nitb.mcc_mnc()) +ms_mt.connect(nitb.mcc_mnc()) + +ms_mo.log_info() +ms_mt.log_info() + +print('waiting for modems to attach...') +wait(ms_mo.is_connected, nitb.mcc_mnc()) +wait(ms_mt.is_connected, nitb.mcc_mnc()) +wait(nitb.subscriber_attached, ms_mo, ms_mt) + +sms = ms_mo.sms_send(ms_mt) +wait(ms_mt.sms_was_received, sms) diff --git a/suites/aoip_sms/suite.conf b/suites/nitb_sms/suite.conf index 28a81ea..485402b 100644 --- a/suites/aoip_sms/suite.conf +++ b/suites/nitb_sms/suite.conf @@ -1,9 +1,12 @@ resources: ip_address: - - times: 6 # msc, bsc, hlr, stp, mgw*2 + - times: 1 bts: - times: 1 modem: - times: 2 features: - sms + +defaults: + timeout: 60s diff --git a/suites/aoip_ussd/assert_extension.py b/suites/nitb_ussd/assert_extension.py index 475de09..8ccab2d 100755 --- a/suites/aoip_ussd/assert_extension.py +++ b/suites/nitb_ussd/assert_extension.py @@ -3,36 +3,24 @@ from osmo_gsm_tester.testenv import * USSD_COMMAND_GET_EXTENSION = '*#100#' -hlr = suite.hlr() +nitb = suite.nitb() bts = suite.bts() -mgw_msc = suite.mgw() -mgw_bsc = suite.mgw() -stp = suite.stp() -msc = suite.msc(hlr, mgw_msc, stp) -bsc = suite.bsc(msc, mgw_bsc, stp) ms = suite.modem() -hlr.start() -stp.start() -msc.start() -mgw_msc.start() -mgw_bsc.start() - -bsc.bts_add(bts) -bsc.start() - +print('start nitb and bts...') +nitb.bts_add(bts) +nitb.start() bts.start() -wait(bsc.bts_is_connected, bts) - -hlr.subscriber_add(ms) +wait(nitb.bts_is_connected, bts) -ms.connect(msc.mcc_mnc()) +nitb.subscriber_add(ms) +ms.connect(nitb.mcc_mnc()) ms.log_info() print('waiting for modems to attach...') -wait(ms.is_connected, msc.mcc_mnc()) -wait(msc.subscriber_attached, ms) +wait(ms.is_connected, nitb.mcc_mnc()) +wait(nitb.subscriber_attached, ms) # ofono (qmi) currently changes state to 'registered' jut after sending # 'Location Update Request', but before receiving 'Location Updating Accept'. @@ -46,5 +34,4 @@ sleep(10) print('Sending ussd code %s' % USSD_COMMAND_GET_EXTENSION) response = ms.ussd_send(USSD_COMMAND_GET_EXTENSION) -log('got ussd response: %r' % repr(response)) -assert response.endswith(' ' + ms.msisdn) +assert ' ' + ms.msisdn + '\r' in response diff --git a/suites/aoip_ussd/suite.conf b/suites/nitb_ussd/suite.conf index 460147a..232a5d8 100644 --- a/suites/aoip_ussd/suite.conf +++ b/suites/nitb_ussd/suite.conf @@ -1,9 +1,12 @@ resources: ip_address: - - times: 6 # msc, bsc, hlr, stp, mgw*2 + - times: 1 bts: - times: 1 modem: - times: 1 features: - ussd + +defaults: + timeout: 60s diff --git a/suites/smpp/esme_connect_policy_acceptall.py b/suites/smpp/esme_connect_policy_acceptall.py index 904226b..168b4f3 100755 --- a/suites/smpp/esme_connect_policy_acceptall.py +++ b/suites/smpp/esme_connect_policy_acceptall.py @@ -6,8 +6,11 @@ from osmo_gsm_tester.testenv import * -nitb = suite.nitb() -smsc = nitb.smsc +hlr = suite.hlr() +mgw_msc = suite.mgw() +stp = suite.stp() +msc = suite.msc(hlr, mgw_msc, stp) +smsc = msc.smsc esme = suite.esme() # Here we deliberately omit calling smsc.esme_add() to avoid having it included @@ -15,7 +18,10 @@ esme = suite.esme() smsc.set_smsc_policy(smsc.SMSC_POLICY_ACCEPT_ALL) esme.set_smsc(smsc) -nitb.start() +stp.start() +hlr.start() +msc.start() +mgw_msc.start() # Due to accept-all policy, connect() should work even if we didn't previously # configure the esme in the smsc, no matter the system_id / password we use. diff --git a/suites/smpp/esme_connect_policy_closed.py b/suites/smpp/esme_connect_policy_closed.py index eaabb3d..487e5a4 100755 --- a/suites/smpp/esme_connect_policy_closed.py +++ b/suites/smpp/esme_connect_policy_closed.py @@ -11,8 +11,13 @@ from osmo_gsm_tester.testenv import * SMPP_ESME_RINVPASWD = 0x0000000E SMPP_ESME_RINVSYSID = 0x0000000F -nitb = suite.nitb() -smsc = nitb.smsc +hlr = suite.hlr() +bts = suite.bts() +mgw_msc = suite.mgw() +stp = suite.stp() +msc = suite.msc(hlr, mgw_msc, stp) +smsc = msc.smsc + esme = suite.esme() esme_no_pwd = suite.esme() esme_no_pwd.set_password('') @@ -21,7 +26,10 @@ smsc.set_smsc_policy(smsc.SMSC_POLICY_CLOSED) smsc.esme_add(esme) smsc.esme_add(esme_no_pwd) -nitb.start() +stp.start() +hlr.start() +msc.start() +mgw_msc.start() log('Test with correct credentials (no password)') esme_no_pwd.connect() diff --git a/suites/smpp/esme_ms_sms_storeforward.py b/suites/smpp/esme_ms_sms_storeforward.py index 391a040..681bc29 100755 --- a/suites/smpp/esme_ms_sms_storeforward.py +++ b/suites/smpp/esme_ms_sms_storeforward.py @@ -12,34 +12,46 @@ from osmo_gsm_tester.testenv import * SMPP_ESME_RINVDSTADR = 0x0000000B -nitb = suite.nitb() +hlr = suite.hlr() bts = suite.bts() +mgw_msc = suite.mgw() +mgw_bsc = suite.mgw() +stp = suite.stp() +msc = suite.msc(hlr, mgw_msc, stp) +bsc = suite.bsc(msc, mgw_bsc, stp) +bsc.bts_add(bts) + ms = suite.modem() esme = suite.esme() +msc.smsc.esme_add(esme) -print('start nitb and bts...') -nitb.bts_add(bts) -nitb.smsc.esme_add(esme) -nitb.start() +hlr.start() +stp.start() +msc.start() +mgw_msc.start() +mgw_bsc.start() +bsc.start() bts.start() -wait(nitb.bts_is_connected, bts) +wait(bsc.bts_is_connected, bts) esme.connect() -nitb.subscriber_add(ms) +hlr.subscriber_add(ms) wrong_msisdn = ms.msisdn + esme.msisdn -print('sending sms with wrong msisdn %s, it will fail' % wrong_msisdn) +print('sending sms with wrong msisdn %s, it will be stored but not delivered' % wrong_msisdn) msg = Sms(esme.msisdn, wrong_msisdn, 'smpp message with wrong dest') -esme.run_method_expect_failure(SMPP_ESME_RINVDSTADR, esme.sms_send_wait_resp, msg, esme.MSGMODE_STOREFORWARD) +# Since osmo-msc 1e67fea7ba5c6336, we accept all sms in store&forward mode without looking at HLR +# esme.run_method_expect_failure(SMPP_ESME_RINVDSTADR, esme.sms_send_wait_resp, msg, esme.MSGMODE_STOREFORWARD) +umref_wrong = esme.sms_send_wait_resp(msg, esme.MSGMODE_STOREFORWARD, receipt=True) print('sending sms, it will be stored...') msg = Sms(esme.msisdn, ms.msisdn, 'smpp send not-yet-registered message') umref = esme.sms_send_wait_resp(msg, esme.MSGMODE_STOREFORWARD, receipt=True) print('MS registers and will receive the SMS...') -ms.connect(nitb.mcc_mnc()) -wait(ms.is_connected, nitb.mcc_mnc()) -wait(nitb.subscriber_attached, ms) +ms.connect(msc.mcc_mnc()) +wait(ms.is_connected, msc.mcc_mnc()) +wait(msc.subscriber_attached, ms) wait(ms.sms_was_received, msg) print('Waiting to receive and consume sms receipt with reference', umref) wait(esme.receipt_was_received, umref) @@ -50,4 +62,8 @@ umref = esme.sms_send_wait_resp(msg, esme.MSGMODE_STOREFORWARD, receipt=True) wait(ms.sms_was_received, msg) print('Waiting to receive and consume sms receipt with reference', umref) wait(esme.receipt_was_received, umref) + +print('Asserting the sms with wrong msisdn was not delivered', umref_wrong) +assert not esme.receipt_was_received(umref_wrong) + esme.disconnect() diff --git a/suites/smpp/esme_ms_sms_transaction.py b/suites/smpp/esme_ms_sms_transaction.py index adc9dae..16b01cc 100755 --- a/suites/smpp/esme_ms_sms_transaction.py +++ b/suites/smpp/esme_ms_sms_transaction.py @@ -10,26 +10,36 @@ from osmo_gsm_tester.testenv import * SMPP_ESME_RINVDSTADR = 0x0000000B -nitb = suite.nitb() +hlr = suite.hlr() bts = suite.bts() +mgw_msc = suite.mgw() +mgw_bsc = suite.mgw() +stp = suite.stp() +msc = suite.msc(hlr, mgw_msc, stp) +bsc = suite.bsc(msc, mgw_bsc, stp) +bsc.bts_add(bts) + ms = suite.modem() esme = suite.esme() - -print('start nitb and bts...') -nitb.bts_add(bts) -nitb.smsc.esme_add(esme) -nitb.start() +msc.smsc.esme_add(esme) + +hlr.start() +stp.start() +msc.start() +mgw_msc.start() +mgw_bsc.start() +bsc.start() bts.start() -wait(nitb.bts_is_connected, bts) +wait(bsc.bts_is_connected, bts) esme.connect() -nitb.subscriber_add(ms) -ms.connect(nitb.mcc_mnc()) +hlr.subscriber_add(ms) +ms.connect(msc.mcc_mnc()) ms.log_info() print('waiting for modem to attach...') -wait(ms.is_connected, nitb.mcc_mnc()) -wait(nitb.subscriber_attached, ms) +wait(ms.is_connected, msc.mcc_mnc()) +wait(msc.subscriber_attached, ms) print('sending first sms...') msg = Sms(esme.msisdn, ms.msisdn, 'smpp send message') diff --git a/suites/smpp/suite.conf b/suites/smpp/suite.conf index eb5dc01..61e7015 100644 --- a/suites/smpp/suite.conf +++ b/suites/smpp/suite.conf @@ -1,6 +1,6 @@ resources: ip_address: - - times: 1 + - times: 6 # msc, bsc, hlr, stp, mgw*2 bts: - times: 1 modem: diff --git a/suites/sms/mo_mt_sms.py b/suites/sms/mo_mt_sms.py index 10897ff..7654ea6 100755 --- a/suites/sms/mo_mt_sms.py +++ b/suites/sms/mo_mt_sms.py @@ -1,30 +1,41 @@ #!/usr/bin/env python3 from osmo_gsm_tester.testenv import * -nitb = suite.nitb() +hlr = suite.hlr() bts = suite.bts() +mgw_msc = suite.mgw() +mgw_bsc = suite.mgw() +stp = suite.stp() +msc = suite.msc(hlr, mgw_msc, stp) +bsc = suite.bsc(msc, mgw_bsc, stp) ms_mo = suite.modem() ms_mt = suite.modem() -print('start nitb and bts...') -nitb.bts_add(bts) -nitb.start() +hlr.start() +stp.start() +msc.start() +mgw_msc.start() +mgw_bsc.start() + +bsc.bts_add(bts) +bsc.start() + bts.start() -wait(nitb.bts_is_connected, bts) +wait(bsc.bts_is_connected, bts) -nitb.subscriber_add(ms_mo) -nitb.subscriber_add(ms_mt) +hlr.subscriber_add(ms_mo) +hlr.subscriber_add(ms_mt) -ms_mo.connect(nitb.mcc_mnc()) -ms_mt.connect(nitb.mcc_mnc()) +ms_mo.connect(msc.mcc_mnc()) +ms_mt.connect(msc.mcc_mnc()) ms_mo.log_info() ms_mt.log_info() print('waiting for modems to attach...') -wait(ms_mo.is_connected, nitb.mcc_mnc()) -wait(ms_mt.is_connected, nitb.mcc_mnc()) -wait(nitb.subscriber_attached, ms_mo, ms_mt) +wait(ms_mo.is_connected, msc.mcc_mnc()) +wait(ms_mt.is_connected, msc.mcc_mnc()) +wait(msc.subscriber_attached, ms_mo, ms_mt) sms = ms_mo.sms_send(ms_mt) wait(ms_mt.sms_was_received, sms) diff --git a/suites/sms/suite.conf b/suites/sms/suite.conf index 485402b..28a81ea 100644 --- a/suites/sms/suite.conf +++ b/suites/sms/suite.conf @@ -1,12 +1,9 @@ resources: ip_address: - - times: 1 + - times: 6 # msc, bsc, hlr, stp, mgw*2 bts: - times: 1 modem: - times: 2 features: - sms - -defaults: - timeout: 60s diff --git a/suites/ussd/assert_extension.py b/suites/ussd/assert_extension.py index 8ccab2d..475de09 100755 --- a/suites/ussd/assert_extension.py +++ b/suites/ussd/assert_extension.py @@ -3,24 +3,36 @@ from osmo_gsm_tester.testenv import * USSD_COMMAND_GET_EXTENSION = '*#100#' -nitb = suite.nitb() +hlr = suite.hlr() bts = suite.bts() +mgw_msc = suite.mgw() +mgw_bsc = suite.mgw() +stp = suite.stp() +msc = suite.msc(hlr, mgw_msc, stp) +bsc = suite.bsc(msc, mgw_bsc, stp) ms = suite.modem() -print('start nitb and bts...') -nitb.bts_add(bts) -nitb.start() +hlr.start() +stp.start() +msc.start() +mgw_msc.start() +mgw_bsc.start() + +bsc.bts_add(bts) +bsc.start() + bts.start() -wait(nitb.bts_is_connected, bts) +wait(bsc.bts_is_connected, bts) + +hlr.subscriber_add(ms) -nitb.subscriber_add(ms) +ms.connect(msc.mcc_mnc()) -ms.connect(nitb.mcc_mnc()) ms.log_info() print('waiting for modems to attach...') -wait(ms.is_connected, nitb.mcc_mnc()) -wait(nitb.subscriber_attached, ms) +wait(ms.is_connected, msc.mcc_mnc()) +wait(msc.subscriber_attached, ms) # ofono (qmi) currently changes state to 'registered' jut after sending # 'Location Update Request', but before receiving 'Location Updating Accept'. @@ -34,4 +46,5 @@ sleep(10) print('Sending ussd code %s' % USSD_COMMAND_GET_EXTENSION) response = ms.ussd_send(USSD_COMMAND_GET_EXTENSION) -assert ' ' + ms.msisdn + '\r' in response +log('got ussd response: %r' % repr(response)) +assert response.endswith(' ' + ms.msisdn) diff --git a/suites/ussd/suite.conf b/suites/ussd/suite.conf index 232a5d8..460147a 100644 --- a/suites/ussd/suite.conf +++ b/suites/ussd/suite.conf @@ -1,12 +1,9 @@ resources: ip_address: - - times: 1 + - times: 6 # msc, bsc, hlr, stp, mgw*2 bts: - times: 1 modem: - times: 1 features: - ussd - -defaults: - timeout: 60s |