4g_suite: add MT and MO test cases

add two new test cases to test paging (MT) and MO traffic

Change-Id: I5c7639f2c6953964a5b6979bc35f59464dbda43f
This commit is contained in:
Andre Puschmann 2020-05-27 21:46:26 +02:00 committed by Pau Espin Pedrol
parent 419a662f76
commit 898a5aaf68
2 changed files with 83 additions and 0 deletions

View File

@ -0,0 +1,39 @@
#!/usr/bin/env python3
from osmo_gsm_tester.testenv import *
epc = tenv.epc()
enb = tenv.enb()
ue = tenv.modem()
epc.subscriber_add(ue)
epc.start()
enb.ue_add(ue)
enb.start(epc)
print('waiting for ENB to connect to EPC...')
wait(epc.enb_is_connected, enb)
print('ENB is connected to EPC')
ue.connect(enb)
print('waiting for UE to attach...')
wait(ue.is_rrc_connected)
print('UE is RRC connected')
print('waiting until RRC connection gets released...')
wait(lambda: not ue.is_rrc_connected())
print('UE is RRC idle')
# Wait a bit
sleep(5)
# Generate MO traffic
proc = ue.run_netns_wait('ping', ('ping', '-c', '1', epc.tun_addr()))
output = proc.get_stdout()
# Check PRACH transmissions
num_prach_sent = ue.get_counter('prach_sent')
if num_prach_sent != 2:
raise Exception("Expected to have sent exactly 2 PRACHs, but in fact sent {}".format(num_prach_sent))
print(output)
test.set_report_stdout(output)

View File

@ -0,0 +1,44 @@
#!/usr/bin/env python3
from osmo_gsm_tester.testenv import *
epc = tenv.epc()
enb = tenv.enb()
ue = tenv.modem()
epc.subscriber_add(ue)
epc.start()
enb.ue_add(ue)
enb.start(epc)
print('waiting for ENB to connect to EPC...')
wait(epc.enb_is_connected, enb)
print('ENB is connected to EPC')
ue.connect(enb)
print('waiting for UE to attach...')
wait(ue.is_rrc_connected)
print('UE is RRC connected')
print('waiting until RRC connection gets released...')
wait(lambda: not ue.is_rrc_connected())
print('UE is RRC idle')
# Wait a bit
sleep(5)
# Generate MO traffic, send single ping
proc = epc.run_wait('ping', ('ping', '-c', '1', ue.get_assigned_addr()))
output = proc.get_stdout()
# Check paging received
num_paging_received = ue.get_counter('paging_received')
if num_paging_received != 1:
raise Exception("Expected to receive exactly 1 paging message, but in fact received {}".format(num_paging_received))
# Check PRACH transmissions
num_prach_sent = ue.get_counter('prach_sent')
if num_prach_sent != 2:
raise Exception("Expected to have sent exactly 2 PRACHs, but in fact sent {}".format(num_prach_sent))
print(output)
test.set_report_stdout(output)