diff options
author | Philipp Maier <pmaier@sysmocom.de> | 2019-10-01 14:07:35 +0200 |
---|---|---|
committer | Philipp Maier <pmaier@sysmocom.de> | 2019-10-01 14:07:35 +0200 |
commit | bfaa4202060fae3693d33a6574dbe80bd8ca5f2d (patch) | |
tree | 1b971e366dd9a4fddb3707367dec4631f03527de | |
parent | 71b021ed1ddb1c3bb1808d5b7b3fe209d732a9eb (diff) |
MGC_Test: test rtp directions separately in TC_ts101318_rfc5993_rtp_conversionpmaier/test_01102019
The testcase TC_ts101318_rfc5993_rtp_conversion tests the RTP packet
format conversion of ts101318 to rfc5993 and vice versa. At the moment
the testcase sends RTP packets in both directions at the same time. In
order to simplify the test and to make race conditions less likely, lets
test both directions separately and add some guard time.
Change-Id: Id9b69587f7fb5f6b0da072ac5f4863fd4111e597
-rw-r--r-- | mgw/MGCP_Test.ttcn | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/mgw/MGCP_Test.ttcn b/mgw/MGCP_Test.ttcn index 86fc275..4f2d58e 100644 --- a/mgw/MGCP_Test.ttcn +++ b/mgw/MGCP_Test.ttcn @@ -1961,7 +1961,7 @@ module MGCP_Test { f_vty_transceive(MGWVTY, "mgcp"); f_vty_transceive(MGWVTY, "rtp-patch rfc5993hr"); - /* from us to MGW */ + /* Connection #0 (Bidirectional) */ flow[0] := valueof(t_RtpFlow(mp_local_ip, mp_remote_ip, 111, "GSM-HR-08/8000")); /* bind local RTP emulation sockets */ flow[0].em.portnr := 10000; @@ -1971,7 +1971,7 @@ module MGCP_Test { flow[0].rtp_cfg.tx_fixed_payload := '0b11b3eede60be4e3ec68838c7b5'O; f_flow_create(RTPEM[0], ep, call_id, "sendrecv", flow[0]); - /* from MGW back to us */ + /* Connection #1 (Bidirectional) */ flow[1] := valueof(t_RtpFlow(mp_local_ip, mp_remote_ip, 111, "GSM-HR-08/8000")); flow[1].em.portnr := 20000; flow[1].rtp_cfg := c_RtpemDefaultCfg; @@ -1980,17 +1980,31 @@ module MGCP_Test { flow[1].rtp_cfg.tx_fixed_payload := '000b11b3eede60be4e3ec68838c7b5'O; f_flow_create(RTPEM[1], ep, call_id, "sendrecv", flow[1]); - f_rtpem_mode(RTPEM[1], RTPEM_MODE_BIDIR); - f_rtpem_mode(RTPEM[0], RTPEM_MODE_BIDIR); + /* Send RTP packets to connection #0, receive on connection #1 */ + f_rtpem_mode(RTPEM[1], RTPEM_MODE_RXONLY); + f_sleep(0.5); + f_rtpem_mode(RTPEM[0], RTPEM_MODE_TXONLY); + f_sleep(1.0); + f_rtpem_mode(RTPEM[0], RTPEM_MODE_NONE); + f_sleep(0.5); + f_rtpem_mode(RTPEM[1], RTPEM_MODE_NONE); + /* Send RTP packets to connection #1, receive on connection #0 */ + f_rtpem_mode(RTPEM[0], RTPEM_MODE_RXONLY); + f_sleep(0.5); + f_rtpem_mode(RTPEM[1], RTPEM_MODE_TXONLY); f_sleep(1.0); + f_rtpem_mode(RTPEM[1], RTPEM_MODE_NONE); + f_sleep(0.5); + f_rtpem_mode(RTPEM[0], RTPEM_MODE_NONE); + /* Remove RTP flows and check statistics */ f_flow_delete(RTPEM[0]); f_flow_delete(RTPEM[1], ep, call_id); + /* Check for errors */ stats[0] := f_rtpem_stats_get(RTPEM[0]); stats[1] := f_rtpem_stats_get(RTPEM[1]); - f_rtpem_stats_err_check(stats[0]); f_rtpem_stats_err_check(stats[1]); |