mgw: Introduce test TC_two_crcx_mdcx_and_iuup{_rtp}_rfci_unordered
Related: SYS#5969 Change-Id: I2523f18a0fdba87f4e13a2ce3c5da482c4af2e3c
This commit is contained in:
parent
61f9dc5a70
commit
d7963bb037
|
@ -19,6 +19,7 @@ module MGCP_Test {
|
|||
import from RTP_CodecPort all;
|
||||
import from RTP_CodecPort_CtrlFunct all;
|
||||
import from RTP_Emulation all;
|
||||
import from IuUP_Emulation all;
|
||||
import from OSMUX_Types all;
|
||||
import from OSMUX_CodecPort all;
|
||||
import from OSMUX_CodecPort_CtrlFunct all;
|
||||
|
@ -2465,6 +2466,7 @@ module MGCP_Test {
|
|||
|
||||
/* create two local RTP+IuUP emulations and pass data in both directions */
|
||||
function f_tc_two_crcx_mdcx_and_iuup(charstring local_ip_a, charstring remote_ip_a,
|
||||
IuUP_RabFlowCombinationList rfcl_a,
|
||||
charstring local_ip_b, charstring remote_ip_b) runs on dummy_CT {
|
||||
var RtpFlowData flow[2];
|
||||
var RtpemStats stats[2];
|
||||
|
@ -2483,6 +2485,7 @@ module MGCP_Test {
|
|||
flow[0].rtp_cfg.tx_payload_type := flow[0].pt;
|
||||
flow[0].rtp_cfg.iuup_mode := true;
|
||||
flow[0].rtp_cfg.iuup_cfg.active_init := true;
|
||||
flow[0].rtp_cfg.iuup_cfg.rab_flow_combs := rfcl_a;
|
||||
f_flow_create(RTPEM[0], ep, call_id, "recvonly", flow[0], true);
|
||||
f_rtpem_mode(RTPEM[0], RTPEM_MODE_RXONLY);
|
||||
|
||||
|
@ -2576,12 +2579,28 @@ module MGCP_Test {
|
|||
setverdict(pass);
|
||||
}
|
||||
testcase TC_two_crcx_mdcx_and_iuup() runs on dummy_CT {
|
||||
f_tc_two_crcx_mdcx_and_iuup(mp_local_ipv4, mp_remote_ipv4,
|
||||
var template (value) IuUP_RabFlowCombinationList rfcl := {
|
||||
t_IuUP_RFC_AMR_12_2(0),
|
||||
t_IuUP_RFC_AMR_SID(1),
|
||||
t_IuUP_RFC_AMR_NO_DATA(2)
|
||||
};
|
||||
f_tc_two_crcx_mdcx_and_iuup(mp_local_ipv4, mp_remote_ipv4, valueof(rfcl),
|
||||
mp_local_ipv4, mp_remote_ipv4);
|
||||
}
|
||||
/* Same as TC_two_crcx_mdcx_and_iuup, but passing unordered RFCI list (ID != position) */
|
||||
testcase TC_two_crcx_mdcx_and_iuup_rfci_unordered() runs on dummy_CT {
|
||||
var template (value) IuUP_RabFlowCombinationList rfcl := {
|
||||
t_IuUP_RFC_AMR_12_2(1),
|
||||
t_IuUP_RFC_AMR_SID(2),
|
||||
t_IuUP_RFC_AMR_NO_DATA(0)
|
||||
};
|
||||
f_tc_two_crcx_mdcx_and_iuup(mp_local_ipv4, mp_remote_ipv4, valueof(rfcl),
|
||||
mp_local_ipv4, mp_remote_ipv4);
|
||||
}
|
||||
|
||||
/* create two local emulations (1 RTP, 1 RTP+IuUP) and pass data in both directions */
|
||||
function f_tc_two_crcx_mdcx_and_iuup_rtp(charstring local_ip_a, charstring remote_ip_a,
|
||||
IuUP_RabFlowCombinationList rfcl_a,
|
||||
charstring local_ip_b, charstring remote_ip_b) runs on dummy_CT {
|
||||
var RtpFlowData flow[2];
|
||||
var RtpemStats stats[2];
|
||||
|
@ -2602,6 +2621,7 @@ module MGCP_Test {
|
|||
flow[0].rtp_cfg.rx_fixed_payload := '08556d944c71a1a081e7ead204244480000ecd82b81118000097c4794e7740'O; /* flow[1].rtp_cfg.tx_fixed_payload converted AMR-BE-RTP->AMR-IUUP*/
|
||||
flow[0].rtp_cfg.iuup_mode := true;
|
||||
flow[0].rtp_cfg.iuup_cfg.active_init := true;
|
||||
flow[0].rtp_cfg.iuup_cfg.rab_flow_combs := rfcl_a;
|
||||
f_flow_create(RTPEM[0], ep, call_id, "recvonly", flow[0], true);
|
||||
f_rtpem_mode(RTPEM[0], RTPEM_MODE_RXONLY);
|
||||
|
||||
|
@ -2696,7 +2716,22 @@ module MGCP_Test {
|
|||
setverdict(pass);
|
||||
}
|
||||
testcase TC_two_crcx_mdcx_and_iuup_rtp() runs on dummy_CT {
|
||||
f_tc_two_crcx_mdcx_and_iuup_rtp(mp_local_ipv4, mp_remote_ipv4,
|
||||
var template (value) IuUP_RabFlowCombinationList rfcl := {
|
||||
t_IuUP_RFC_AMR_12_2(0),
|
||||
t_IuUP_RFC_AMR_SID(1),
|
||||
t_IuUP_RFC_AMR_NO_DATA(2)
|
||||
};
|
||||
f_tc_two_crcx_mdcx_and_iuup_rtp(mp_local_ipv4, mp_remote_ipv4, valueof(rfcl),
|
||||
mp_local_ipv4, mp_remote_ipv4);
|
||||
}
|
||||
/* Same as TC_two_crcx_mdcTC_two_crcx_mdcx_and_iuup_rtpx_and_iuup, but passing unordered RFCI list (ID != position) */
|
||||
testcase TC_two_crcx_mdcx_and_iuup_rtp_rfci_unordered() runs on dummy_CT {
|
||||
var template (value) IuUP_RabFlowCombinationList rfcl := {
|
||||
t_IuUP_RFC_AMR_12_2(1),
|
||||
t_IuUP_RFC_AMR_SID(2),
|
||||
t_IuUP_RFC_AMR_NO_DATA(0)
|
||||
};
|
||||
f_tc_two_crcx_mdcx_and_iuup_rtp(mp_local_ipv4, mp_remote_ipv4, valueof(rfcl),
|
||||
mp_local_ipv4, mp_remote_ipv4);
|
||||
}
|
||||
|
||||
|
@ -2775,7 +2810,9 @@ module MGCP_Test {
|
|||
execute(TC_two_crcx_mdcx_and_rtp_osmux_ipv6_ipv4());
|
||||
|
||||
execute(TC_two_crcx_mdcx_and_iuup());
|
||||
execute(TC_two_crcx_mdcx_and_iuup_rfci_unordered());
|
||||
execute(TC_two_crcx_mdcx_and_iuup_rtp());
|
||||
execute(TC_two_crcx_mdcx_and_iuup_rtp_rfci_unordered());
|
||||
|
||||
/* Note: This testcase will trigger an OSMO_ASSERT() bug in
|
||||
* older versions of osmo-mgw. This eventually leads into
|
||||
|
|
Loading…
Reference in New Issue