From aea2f2c13c4a59c259f305eebf3f8596ff6f0e3b Mon Sep 17 00:00:00 2001 From: Neels Hofmeyr Date: Thu, 18 May 2017 22:01:59 +0200 Subject: MSC+BSC: add separate suites for AoIP: aoip_sms, aoip_debug It would be nicer to select the network programs as scenarios, i.e. independently from the specifics of tests that don't care whether a NITB or a MSC+BSC is in place. See OS#2270. For now have a separate script for BSC+MSC+HLR operation to be able to rapidly get the binaries to work. We might even simply drop the NITB style, in which case we don't need to make it configurable. Change-Id: I06d2529822f3e483ce7fffc439edfa57844e01ef --- suites/aoip_debug/interactive.py | 43 ++++++++++++++++++++++++++++++++++++++++ suites/aoip_debug/suite.conf | 7 +++++++ suites/aoip_sms/mo_mt_sms.py | 29 +++++++++++++++++++++++++++ suites/aoip_sms/suite.conf | 7 +++++++ 4 files changed, 86 insertions(+) create mode 100755 suites/aoip_debug/interactive.py create mode 100644 suites/aoip_debug/suite.conf create mode 100755 suites/aoip_sms/mo_mt_sms.py create mode 100644 suites/aoip_sms/suite.conf (limited to 'suites') diff --git a/suites/aoip_debug/interactive.py b/suites/aoip_debug/interactive.py new file mode 100755 index 0000000..4f56d5c --- /dev/null +++ b/suites/aoip_debug/interactive.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python3 +from osmo_gsm_tester.test import * +hlr = suite.hlr() +bts = suite.bts() +mgcpgw = suite.mgcpgw(bts_ip=bts.remote_addr()) +msc = suite.msc(hlr, mgcpgw) +bsc = suite.bsc(msc) +modems = suite.modems(int(prompt('How many modems?'))) + +hlr.start() +msc.start() + +bsc.bts_add(bts) +bsc.start() + +bts.start() + +for m in modems: + hlr.subscriber_add(m) + m.connect(bsc) + +while True: + cmd = prompt('Enter command: (q)uit (s)ms (g)et-registered (w)ait-registered') + cmd = cmd.strip().lower() + + if not cmd: + continue + if 'quit'.startswith(cmd): + break + elif 'wait-registered'.startswith(cmd): + try: + wait(msc.subscriber_attached, *modems) + except Timeout: + print('Timeout while waiting for registration.') + elif 'get-registered'.startswith(cmd): + print(msc.imsi_list_attached()) + print('RESULT: %s' % + ('All modems are registered.' if msc.subscriber_attached(*modems) + else 'Some modem(s) not registered yet.')) + elif 'sms'.startswith(cmd): + for mo in modems: + for mt in modems: + mo.sms_send(mt.msisdn, 'to ' + mt.name()) diff --git a/suites/aoip_debug/suite.conf b/suites/aoip_debug/suite.conf new file mode 100644 index 0000000..48c76b6 --- /dev/null +++ b/suites/aoip_debug/suite.conf @@ -0,0 +1,7 @@ +resources: + ip_address: + - times: 4 + bts: + - times: 1 + modem: + - times: 4 diff --git a/suites/aoip_sms/mo_mt_sms.py b/suites/aoip_sms/mo_mt_sms.py new file mode 100755 index 0000000..96e1caf --- /dev/null +++ b/suites/aoip_sms/mo_mt_sms.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 +from osmo_gsm_tester.test import * + +hlr = suite.hlr() +bts = suite.bts() +mgcpgw = suite.mgcpgw(bts_ip=bts.remote_addr()) +msc = suite.msc(hlr, mgcpgw) +bsc = suite.bsc(msc) +ms_mo = suite.modem() +ms_mt = suite.modem() + +hlr.start() +msc.start() +mgcpgw.start() + +bsc.bts_add(bts) +bsc.start() + +bts.start() + +hlr.subscriber_add(ms_mo) +hlr.subscriber_add(ms_mt) + +ms_mo.connect(bsc) +ms_mt.connect(bsc) +wait(msc.subscriber_attached, ms_mo, ms_mt) + +sms = ms_mo.sms_send(ms_mt.msisdn) +wait(ms_mt.sms_was_received, sms) diff --git a/suites/aoip_sms/suite.conf b/suites/aoip_sms/suite.conf new file mode 100644 index 0000000..c6cbd88 --- /dev/null +++ b/suites/aoip_sms/suite.conf @@ -0,0 +1,7 @@ +resources: + ip_address: + - times: 4 + bts: + - times: 1 + modem: + - times: 2 -- cgit v1.2.3