Commit 4a1b3a56 authored by Bostjan Pintar's avatar Bostjan Pintar
Browse files

Merge branch 'TTF010' of https://forge.etsi.org/rep/int/vxlte/emergency-iop into TTF010

parents 426b0a2b ea6a0eb0
Loading
Loading
Loading
Loading
+164 −22
Original line number Original line Diff line number Diff line
@@ -1175,7 +1175,6 @@ module AtsImsIot_Emergency {
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1


                        // Test body
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);


                        f_mtc_check_TP_GM_PCSCF_INVITE_02(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 1
                        f_mtc_check_TP_GM_PCSCF_INVITE_02(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 1
                        f_mtc_check_TP_GM_PCSCF_ECO_100Trying_01(vc_vxlte_monitor_components.gmA, -, v_sip);
                        f_mtc_check_TP_GM_PCSCF_ECO_100Trying_01(vc_vxlte_monitor_components.gmA, -, v_sip);
@@ -1193,7 +1192,7 @@ module AtsImsIot_Emergency {
                        f_mtc_check_TP_MW_PCSCF_ECO_100Trying_01(vc_vxlte_monitor_components.mwPE, -, v_sip);
                        f_mtc_check_TP_MW_PCSCF_ECO_100Trying_01(vc_vxlte_monitor_components.mwPE, -, v_sip);


                        // FIXME f_mtc_check_TP_MW_IBCF_xxx <--> f_mtc_check_TP_ML_EBCF_xxx
                        // FIXME f_mtc_check_TP_MW_IBCF_xxx <--> f_mtc_check_TP_ML_EBCF_xxx
                        f_mtc_check_TP_MW_IBCF_INVITE_01(vc_vxlte_monitor_components.mlE_LRF); // Event 11
                        f_mtc_check_TP_ML_ECSCF_ECO_INVITE_01(vc_vxlte_monitor_components.mlE_LRF, -, v_sip); // Event 11
                        f_mtc_check_TP_MX_LRF_3xxAny_01(vc_vxlte_monitor_components.mlE_LRF, -, v_sip); // Event 12
                        f_mtc_check_TP_MX_LRF_3xxAny_01(vc_vxlte_monitor_components.mlE_LRF, -, v_sip); // Event 12


                        f_mtc_check_TP_MW_IBCF_INVITE_01(vc_vxlte_monitor_components.mwEB); // Event 13
                        f_mtc_check_TP_MW_IBCF_INVITE_01(vc_vxlte_monitor_components.mwEB); // Event 13
@@ -1380,7 +1379,6 @@ module AtsImsIot_Emergency {
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_10_01();
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_INI_10_01();


                        // Test body
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);


                        f_mtc_check_TP_MM_ECSCF_ECO_INVITE_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // INVITE Event 1
                        f_mtc_check_TP_MM_ECSCF_ECO_INVITE_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // INVITE Event 1
                        f_mtc_check_TP_MM_ECSCF_ECO_100Trying_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip);
                        f_mtc_check_TP_MM_ECSCF_ECO_100Trying_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip);
@@ -1405,7 +1403,7 @@ module AtsImsIot_Emergency {
                        f_mtc_userAnswerCall(v_ueA); // Event 26
                        f_mtc_userAnswerCall(v_ueA); // Event 26


                        f_mtc_check_TP_GM_PCSCF_200OK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 18
                        f_mtc_check_TP_GM_PCSCF_200OK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 18
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 10
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 19
                        f_mtc_check_TP_MM_ECSCF_ECO_200OK_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // 200 OK Event 21
                        f_mtc_check_TP_MM_ECSCF_ECO_200OK_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // 200 OK Event 21


                        f_mtc_check_TP_MM_ECSCF_ECO_ACK_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // ACK – Event 22
                        f_mtc_check_TP_MM_ECSCF_ECO_ACK_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // ACK – Event 22
@@ -1484,7 +1482,7 @@ module AtsImsIot_Emergency {
                        // Test body
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);


                        f_mtc_check_TP_IC_IBCF_INVITE_01(vc_vxlte_monitor_components.ic); // Event 21
                        f_mtc_check_TP_IC_IBCF_INVITE_01(vc_vxlte_monitor_components.ic); // Event 2
                        f_mtc_check_TP_GM_PCSCF_ECO_100Trying_01(vc_vxlte_monitor_components.ic, -, v_sip);
                        f_mtc_check_TP_GM_PCSCF_ECO_100Trying_01(vc_vxlte_monitor_components.ic, -, v_sip);


                        f_mtc_check_TP_MW_IBCF_INVITE_01(vc_vxlte_monitor_components.mwEB); // Event 3
                        f_mtc_check_TP_MW_IBCF_INVITE_01(vc_vxlte_monitor_components.mwEB); // Event 3
@@ -1510,7 +1508,7 @@ module AtsImsIot_Emergency {
                        f_mtc_userAnswerCall(v_ueA); // Event 26
                        f_mtc_userAnswerCall(v_ueA); // Event 26


                        f_mtc_check_TP_GM_PCSCF_200OK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 18
                        f_mtc_check_TP_GM_PCSCF_200OK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 18
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 10
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 19
                        f_mtc_check_TP_MM_ECSCF_ECO_200OK_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // 200 OK Event 21
                        f_mtc_check_TP_MM_ECSCF_ECO_200OK_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // 200 OK Event 21


                        f_mtc_check_TP_MM_ECSCF_ECO_ACK_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // ACK – Event 22
                        f_mtc_check_TP_MM_ECSCF_ECO_ACK_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // ACK – Event 22
@@ -1588,11 +1586,47 @@ module AtsImsIot_Emergency {
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1


                        // Test body
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);
                        f_mtc_check_TP_IC_IBCF_INVITE_02(vc_vxlte_monitor_components.ic); // Event 4
                        // TODO


                        f_mtc_userCheckCallEstablished(v_ueA); // Event 34
                        f_mtc_check_TP_MW_IBCF_INVITE_01(vc_vxlte_monitor_components.mwEB); // Event 5
                        f_mtc_userCheckCallEstablished(v_psap); // Event 34
                        f_mtc_check_TP_MW_IBSCF_100Trying_01(vc_vxlte_monitor_components.mwEB, -, v_sip);

                        f_mtc_check_TP_MW_PCSCF_ECO_INVITE_02(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 6
                        f_mtc_check_TP_MW_PCSCF_ECO_100Trying_01(vc_vxlte_monitor_components.mwPE, -, v_sip);

                        f_mtc_check_TP_GM_PCSCF_INVITE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 7
                        f_mtc_check_TP_GM_PCSCF_ECO_100Trying_01(vc_vxlte_monitor_components.gmA, -, v_sip);

                        // 183 Session Progress
                        f_mtc_check_TP_GM_PCSCF_183SESSION_PROGRESS_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 8
                        f_mtc_check_TP_MW_PCSCF_ECO_183SESSION_PROGRESS_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 9
                        
                        f_mtc_check_TP_MW_PCSCF_ECO_183SESSION_PROGRESS_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 13
                        f_mtc_check_TP_IC_IBCF_183RESP_01(vc_vxlte_monitor_components.ic); // Event 14

                        f_mtc_userCheckRinging(v_ueA); // Event 15
                        f_mtc_userCheckPeerIsRinging(v_psap); // Event 15

                        f_mtc_check_TP_GM_PCSCF_180RINGING_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 16
                        f_mtc_check_TP_MW_PCSCF_ECO_180RINGING_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 17

                        f_mtc_check_TP_GM_PCSCF_200OK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 18
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 19

                        f_mtc_check_TP_MW_PCSCF_ECO_180RINGING_01(vc_vxlte_monitor_components.mwEB, -, v_sip); // Event 29
                        f_mtc_check_TP_IC_IBCF_180RESP_01(vc_vxlte_monitor_components.ic); // Event 30

                        f_mtc_check_TP_MW_PCSCF_200OK_01(vc_vxlte_monitor_components.mwEB, -, v_sip); // Event 31
                        f_mtc_check_TP_IC_IBCF_2XXRESP_01(vc_vxlte_monitor_components.ic); // Event 32

                        f_mtc_check_TP_IC_IBCF_ACK_01(vc_vxlte_monitor_components.ic); // Event 33
                        f_mtc_check_TP_MW_PCSCF_ACK_02(vc_vxlte_monitor_components.mwEB, -, v_sip); // Event 34

                        f_mtc_check_TP_MW_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 35
                        f_mtc_check_TP_GM_PCSCF_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // ACK Event 36

                        f_mtc_userCheckCallEstablished(v_ueA); // Event 37
                        f_mtc_userCheckCallEstablished(v_psap); // Event 37


                        // Postamble
                        // Postamble
                        f_mtc_EndCall(v_ueA);
                        f_mtc_EndCall(v_ueA);
@@ -1753,7 +1787,6 @@ module AtsImsIot_Emergency {
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1


                        // Test body
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);


                        f_mtc_check_TP_GM_PCSCF_ECO_BYE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 2
                        f_mtc_check_TP_GM_PCSCF_ECO_BYE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 2
                        f_mtc_check_TP_MW_PCSCF_ECO_BYE_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 3
                        f_mtc_check_TP_MW_PCSCF_ECO_BYE_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 3
@@ -1926,9 +1959,21 @@ module AtsImsIot_Emergency {
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1


                        // Test body
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);
                        f_mtc_check_TP_MM_ECSCF_ECO_BYE_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 1


                        // TODO
                        f_mtc_check_TP_MW_PCSCF_ECO_BYE_02(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 7
                        f_mtc_check_TP_GM_PCSCF_ECO_BYE_02(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 8

                        //Rx/Gx exchange after BYE was received at P-CSCF
                        f_mtc_check_TP_RX_PCSCF_STR_01(vc_vxlte_monitor_components.rx); // Event 9
                        f_mtc_check_TP_GX_PCRF_RAR_02(vc_vxlte_monitor_components.gx, true); // Event 10
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // Event 1
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // Event 12                       

                        f_mtc_check_TP_GM_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 13
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 14

                        f_mtc_check_TP_MM_ECSCF_ECO_200OK_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 15


                        f_mtc_userCheckCallTerminated(v_ueA); // Event 21
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 21
                        f_mtc_userCheckCallCancelled(v_psap); // Event 20
                        f_mtc_userCheckCallCancelled(v_psap); // Event 20
@@ -2001,9 +2046,24 @@ module AtsImsIot_Emergency {
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1


                        // Test body
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);


                        // TODO
                        f_mtc_check_TP_IC_IBCF_BYE_01(vc_vxlte_monitor_components.ic); // Event 3
                        f_mtc_check_TP_MM_ECSCF_ECO_BYE_01(vc_vxlte_monitor_components.mwEB, -, v_sip); // Event 4

                        f_mtc_check_TP_MW_PCSCF_ECO_BYE_02(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 7
                        f_mtc_check_TP_GM_PCSCF_ECO_BYE_02(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 8

                        //Rx/Gx exchange after BYE was received at P-CSCF
                        f_mtc_check_TP_RX_PCSCF_STR_01(vc_vxlte_monitor_components.rx); // Event 9
                        f_mtc_check_TP_GX_PCRF_RAR_02(vc_vxlte_monitor_components.gx, true); // Event 10
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // Event 1
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // Event 12                       

                        f_mtc_check_TP_GM_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 13
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 14

                        f_mtc_check_TP_MM_ECSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwEB, -, v_sip); // Event 16
                        f_mtc_check_TP_IC_IBCF_2XXRESP_01(vc_vxlte_monitor_components.ic); // Event 17


                        f_mtc_userCheckCallTerminated(v_ueA); // Event 21
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 21
                        f_mtc_userCheckCallCancelled(v_psap); // Event 20
                        f_mtc_userCheckCallCancelled(v_psap); // Event 20
@@ -2076,9 +2136,24 @@ module AtsImsIot_Emergency {
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1


                        // Test body
                        // Test body
                        //f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);


                        // TODO
                        f_mtc_check_TP_IC_IBCF_BYE_01(vc_vxlte_monitor_components.ic); // Event 4
                        f_mtc_check_TP_MW_IBCF_BYE_01(vc_vxlte_monitor_components.mwEB, -, v_sip); // Event 5

                        f_mtc_check_TP_MW_PCSCF_ECO_BYE_02(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 7
                        f_mtc_check_TP_GM_PCSCF_ECO_BYE_02(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 8

                        //Rx/Gx exchange after BYE was received at P-CSCF
                        f_mtc_check_TP_RX_PCSCF_STR_01(vc_vxlte_monitor_components.rx); // Event 9
                        f_mtc_check_TP_GX_PCRF_RAR_02(vc_vxlte_monitor_components.gx, true); // Event 10
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // Event 1
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // Event 12                       

                        f_mtc_check_TP_GM_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 13
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 14

                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 18
                        f_mtc_check_TP_IC_IBCF_2XXRESP_01(vc_vxlte_monitor_components.ic); // Event 19


                        f_mtc_userCheckCallTerminated(v_ueA); // Event 21
                        f_mtc_userCheckCallTerminated(v_ueA); // Event 21
                        f_mtc_userCheckCallCancelled(v_psap); // Event 20
                        f_mtc_userCheckCallCancelled(v_psap); // Event 20
@@ -2477,7 +2552,7 @@ module AtsImsIot_Emergency {
                        f_mtc_check_TP_GX_PGW_RAA_02(vc_vxlte_monitor_components.gx);  // Event 26
                        f_mtc_check_TP_GX_PGW_RAA_02(vc_vxlte_monitor_components.gx);  // Event 26
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // Event 27                        
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // Event 27                        


                        f_mtc_check_TP_GM_PCSCF_480TEMPAV_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 28
                        f_mtc_check_TP_GM_PCSCF_ECO_380ALTSRV_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 28


                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 29
                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 29
                        f_mtc_check_TP_MW_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 30
                        f_mtc_check_TP_MW_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 30
@@ -2584,7 +2659,7 @@ module AtsImsIot_Emergency {
                        f_mtc_check_TP_GX_PGW_RAA_02(vc_vxlte_monitor_components.gx);  // Event 26
                        f_mtc_check_TP_GX_PGW_RAA_02(vc_vxlte_monitor_components.gx);  // Event 26
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // Event 27                        
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // Event 27                        


                        f_mtc_check_TP_GM_PCSCF_480TEMPAV_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 28
                        f_mtc_check_TP_GM_PCSCF_ECO_380ALTSRV_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 28


                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 29
                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 29
                        f_mtc_check_TP_MW_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 30
                        f_mtc_check_TP_MW_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 30
@@ -2691,7 +2766,7 @@ module AtsImsIot_Emergency {
                        f_mtc_check_TP_GX_PGW_RAA_02(vc_vxlte_monitor_components.gx);  // Event 26
                        f_mtc_check_TP_GX_PGW_RAA_02(vc_vxlte_monitor_components.gx);  // Event 26
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // Event 27                        
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // Event 27                        


                        f_mtc_check_TP_GM_PCSCF_480TEMPAV_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 28
                        f_mtc_check_TP_GM_PCSCF_ECO_380ALTSRV_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 28


                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 29
                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 29
                        f_mtc_check_TP_MW_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 30
                        f_mtc_check_TP_MW_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 30
@@ -2728,7 +2803,7 @@ module AtsImsIot_Emergency {


                /**
                /**
                 * @desc    To demonstrate interaction between UE A and P-CSCF when an emergency session is rejected.
                 * @desc    To demonstrate interaction between UE A and P-CSCF when an emergency session is rejected.
                 * @see ETSI TS 103 795-2 Clause 5.3.4.3	Emergency Session Reject
                 * @see ETSI TS 103 795-2 Clause 5.3.3.3	Emergency Session Reject - IMS not able to handle emergency sessions
                 */
                 */
                testcase TD_VoLTE_ECO_INT_REJ_02() runs on ImsTestCoordinator system IotSystemInterface {
                testcase TD_VoLTE_ECO_INT_REJ_02() runs on ImsTestCoordinator system IotSystemInterface {


@@ -2765,7 +2840,7 @@ module AtsImsIot_Emergency {


                        // Test body
                        // Test body
                        f_mtc_check_TP_GM_PCSCF_ECO_INVITE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // INVITE Event 1
                        f_mtc_check_TP_GM_PCSCF_ECO_INVITE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // INVITE Event 1
                        f_mtc_check_TP_GM_PCSCF_480TEMPAV_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 2
                        f_mtc_check_TP_GM_PCSCF_ECO_380ALTSRV_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 2
                        f_mtc_check_TP_GM_PCSCF_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 3 
                        f_mtc_check_TP_GM_PCSCF_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 3 


                        // Postamble
                        // Postamble
@@ -2793,6 +2868,73 @@ module AtsImsIot_Emergency {


                } // End of group f_TD_VoLTE_ECO_INT_REJ_02
                } // End of group f_TD_VoLTE_ECO_INT_REJ_02


                /**
                 * @desc To demonstrate interaction between UE A and P-CSCF when an emergency session is rejected due to wrong urn
                 * @see ETSI TS 103 795-2 Clause 5.3.3.4	Emergency Session Reject – due to wrong urn
                 */
                testcase TD_VoLTE_ECO_INT_REJ_03() runs on ImsTestCoordinator system IotSystemInterface {

                    var IotEquipmentUser v_ueA  := f_cf_create_IotEquipmentUser ( c_userUE_A_emergency );
                    var IotEquipmentUser v_psap := f_cf_create_IotEquipmentUser ( c_psap );
                    var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A_EMERGENCY );
                    var ImsUserInfo v_infoPsap  := f_getImUser ( PX_PSAP );

                    f_setVxLteMonIterfacesAvailability();
                    //Check required monitor interfaces due to TD
                    if (f_checkVxLteRequiredMonitorInterface({PX_SIP_GMA_INTERFACENAME,
                                                              PX_DIAMETER_GX_INTERFACENAME
                                                              }))
                    {
                        var SipMessage v_sip;

                        f_cf_createVxLteMonitor();

                        // map/connect component ports
                        f_cf_adapter_up ( );
                        f_cf_user_up ( v_ueA );
                        f_cf_user_up ( v_psap );
                        f_cf_VxLteMonitor_Up();

                        // Preamble
                        f_mtc_userRegistration(v_ueA, v_userInfoA);
                        if (PX_PSAP_REGISTERED) {
                            f_mtc_userRegistration(v_psap, v_infoPsap);
                        } else {
                            // TODO Check OPTIONS from PSAP to E-CSCF
                        }
                        f_mtc_check_precond_TD_VoLTE_ECO_INT_REJ_03();
                        f_mtc_userInitiateCall (v_ueA, v_infoPsap); // Event 1

                        // Test body
                        f_mtc_check_TP_GM_PCSCF_ECO_INVITE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // INVITE Event 1
                        f_mtc_check_TP_GM_PCSCF_ECO_380ALTSRV_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 2
                        f_mtc_check_TP_GM_PCSCF_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 3 

                        // Postamble
                        f_PO_user_home_deregistration(v_ueA);
                        f_PO_user_home_deregistration(v_psap);

                        //unmap/disconnect component ports
                        f_cf_user_down ( v_psap );
                        f_cf_user_down ( v_ueA );
                        f_cf_VxLteMonitor_Down();
                        f_cf_adapter_down ( );
                    }else{
                        //log...
                        setverdict (inconc,"At least one required monitor interface SHALL be selected! Check PIXITs")
                    }
                    f_cf_adapter_down ( );
                } // End of TC TD_VoLTE_ECO_INT_REJ_03

                group f_TD_VoLTE_ECO_INT_REJ_03 {

                    function f_mtc_check_precond_TD_VoLTE_ECO_INT_REJ_03() runs on ImsTestCoordinator {
                        log("If the test case fails, please check the preconditions");
                        // TODO Add real code to check pre-conditions
                     } // End of function f_mtc_check_precond_TD_VoLTE_ECO_INT_REJ_03

                } // End of group f_TD_VoLTE_ECO_INT_REJ_03

            } // End of group EmergencySessionAbortOrReject
            } // End of group EmergencySessionAbortOrReject


        } // End of group EmergencySessionEmergencyBearerOperations
        } // End of group EmergencySessionEmergencyBearerOperations
+96 −0

File changed.

Preview size limit exceeded, changes collapsed.

+43 −5
Original line number Original line Diff line number Diff line
@@ -517,7 +517,7 @@ module AtsImsIot_TP_behavior_MM {
                                                         },
                                                         },
                                                         { mw_SipRequest(mw_BYE_Request_Base) },
                                                         { mw_SipRequest(mw_BYE_Request_Base) },
                                                         { 0, omit },
                                                         { 0, omit },
                                                         "TP_MM_ECSCF_BYE_01 - Request",
                                                         "TP_MM_ECSCF_ECO_BYE_01 - Request",
                                                         true,
                                                         true,
                                                         p_checkMessage
                                                         p_checkMessage
                                                         )
                                                         )
@@ -528,6 +528,44 @@ module AtsImsIot_TP_behavior_MM {
            }
            }
        } // End of function f_mtc_check_TP_MM_ECSCF_ECO_BYE_01
        } // End of function f_mtc_check_TP_MM_ECSCF_ECO_BYE_01


        function f_mtc_check_TP_MM_ECSCF_ECO_BYE_02(
                                                    in SipInterfaceMonitor p_monitorCompRef,
                                                    in boolean p_checkMessage := false,
                                                    inout SipMessage p_sip
                                                    ) runs on ImsTestCoordinator {
            if (isvalue(p_monitorCompRef)) {
                // Check the BYE
                p_monitorCompRef.start(
                                       f_Iot_Sip_receive(
                                                         { mw_SipRequest(mw_TP_MM_ECSCF_BYE_01(
                                                                                               p_sip.request.msgHeader.callId,
                                                                                               -, // New CSeq,
                                                                                               -, // FIXME To be set
                                                                                               {
                                                                                                 fieldName := FROM_E,
                                                                                                 addressField := p_sip.request.msgHeader.toField.addressField,
                                                                                                 fromParams := *
                                                                                               }, //p_sip.request.msgHeader.fromField,
                                                                                               {
                                                                                                 fieldName := TO_E,
                                                                                                 addressField := p_sip.request.msgHeader.fromField.addressField,
                                                                                                 toParams := *
                                                                                               } //p_sip.request.msgHeader.toField
                                                                                               )) 
                                                         },
                                                         { mw_SipRequest(mw_BYE_Request_Base) },
                                                         { 0, omit },
                                                         "TP_MM_ECSCF_ECO_BYE_02 - Request",
                                                         true,
                                                         p_checkMessage
                                                         )
                                        );
                p_monitorCompRef.done;
                // Retrieve messge
                f_getSipMsgFromMonitor(p_monitorCompRef, p_sip);
            }
        } // End of function f_mtc_check_TP_MM_ECSCF_ECO_BYE_02

    } // End of group imsBye
    } // End of group imsBye
    
    
    group ims200OkBye {
    group ims200OkBye {
+66 −9

File changed.

Preview size limit exceeded, changes collapsed.

+12 −0
Original line number Original line Diff line number Diff line
@@ -2278,6 +2278,18 @@ module AtsImsIot_Templates {
            }
            }
        } // End of template mw_200OK
        } // End of template mw_200OK
        
        
        template Response mw_380AlternateService(
                                                 template (present) CSeq p_cSeq := ?,
                                                 template (present) CallId p_callId := ?,
                                                 template WwwAuthenticate p_wwwAuthenticate := *
                                                 ) modifies mdw_3XX_Base := {
            msgHeader := {
                cSeq            := p_cSeq,
                callId          := p_callId,
                wwwAuthenticate := p_wwwAuthenticate
            }
        } // End of template mw_380AlternateService
        
        template Response mw_401Unauthorized(
        template Response mw_401Unauthorized(
                                             template (present) CSeq p_cSeq := ?,
                                             template (present) CSeq p_cSeq := ?,
                                             template (present) WwwAuthenticate p_wwwAuthenticate := ?
                                             template (present) WwwAuthenticate p_wwwAuthenticate := ?