Commit 7e5795ab authored by Yann Garcia's avatar Yann Garcia
Browse files

Review of TTCN-3 implementation & templates of all emergency TPs for the SIP part

parent 274f90b7
Loading
Loading
Loading
Loading
+7 −7
Original line number Original line Diff line number Diff line
@@ -2261,13 +2261,13 @@ module AtsImsIot_Emergency {
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // (RAA – Event 4)
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // (RAA – Event 4)
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // (STA – Event 5)                        
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // (STA – Event 5)                        


                        f_mtc_check_TP_MW_PCSCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 6
                        f_mtc_check_TP_MW_PCSCF_EMC_CANCEL_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 6
                        f_mtc_check_TP_MM_ECSCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 7
                        f_mtc_check_TP_MM_ECSCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 7


                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 17
                        f_mtc_check_TP_MW_PCSCF_ECO_200OK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 17
                        f_mtc_check_TP_GM_PCSCF_200OK_02(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 18
                        f_mtc_check_TP_GM_PCSCF_200OK_02(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 18


                        f_mtc_check_TP_MW_PCSCF_ECO_487INVITE_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 24
                        f_mtc_check_TP_MW_PCSCF_EMC_487INVITE_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 24
                        f_mtc_check_TP_GM_PCSCF_487INVITE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 25
                        f_mtc_check_TP_GM_PCSCF_487INVITE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 25


                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 26
                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 26
@@ -2355,7 +2355,7 @@ module AtsImsIot_Emergency {
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // (RAA – Event 4)
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // (RAA – Event 4)
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // (STA – Event 5)                        
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // (STA – Event 5)                        


                        f_mtc_check_TP_MW_PCSCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 6
                        f_mtc_check_TP_MW_PCSCF_EMC_CANCEL_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 6
                        f_mtc_check_TP_MW_IBCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 9
                        f_mtc_check_TP_MW_IBCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 9
                        f_mtc_check_TP_IC_IBCF_CANCEL_01(vc_vxlte_monitor_components.ic, true); // CANCEL Event 10 (NOTE: comment out if ISC simulated by Ic)
                        f_mtc_check_TP_IC_IBCF_CANCEL_01(vc_vxlte_monitor_components.ic, true); // CANCEL Event 10 (NOTE: comment out if ISC simulated by Ic)


@@ -2366,7 +2366,7 @@ module AtsImsIot_Emergency {


                        f_mtc_check_TP_IC_IBCF_487INVITE_01(vc_vxlte_monitor_components.ic); // Event 20
                        f_mtc_check_TP_IC_IBCF_487INVITE_01(vc_vxlte_monitor_components.ic); // Event 20
                        f_mtc_check_TP_MW_IBCF_ECO_487INVITE_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 21
                        f_mtc_check_TP_MW_IBCF_ECO_487INVITE_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 21
                        f_mtc_check_TP_MW_PCSCF_ECO_487INVITE_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 24
                        f_mtc_check_TP_MW_PCSCF_EMC_487INVITE_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 24
                        f_mtc_check_TP_GM_PCSCF_487INVITE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 25
                        f_mtc_check_TP_GM_PCSCF_487INVITE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 25


                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 26
                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 26
@@ -2455,7 +2455,7 @@ module AtsImsIot_Emergency {
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // (RAA – Event 4)
                        f_mtc_check_TP_GX_PGW_RAA_03(vc_vxlte_monitor_components.gx); // (RAA – Event 4)
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // (STA – Event 5)                        
                        f_mtc_check_TP_RX_PCRF_STA_01(vc_vxlte_monitor_components.rx); // (STA – Event 5)                        


                        f_mtc_check_TP_MW_PCSCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 6
                        f_mtc_check_TP_MW_PCSCF_EMC_CANCEL_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 6
                        f_mtc_check_TP_MI_BGCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mwEB, -, v_sip); // Event 13
                        f_mtc_check_TP_MI_BGCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mwEB, -, v_sip); // Event 13
                        f_mtc_check_TP_MM_ECSCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 14
                        f_mtc_check_TP_MM_ECSCF_ECO_CANCEL_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 14


@@ -2465,7 +2465,7 @@ module AtsImsIot_Emergency {


                        f_mtc_check_TP_MM_ECSCF_ECO_487INVITE_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 22
                        f_mtc_check_TP_MM_ECSCF_ECO_487INVITE_01(vc_vxlte_monitor_components.mmB_PSAP, -, v_sip); // Event 22
                        f_mtc_check_TP_MI_BGCF_ECO_487INVITE_01(vc_vxlte_monitor_components.mwEB, -, v_sip); // Event 23
                        f_mtc_check_TP_MI_BGCF_ECO_487INVITE_01(vc_vxlte_monitor_components.mwEB, -, v_sip); // Event 23
                        f_mtc_check_TP_MW_PCSCF_ECO_487INVITE_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 24
                        f_mtc_check_TP_MW_PCSCF_EMC_487INVITE_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 24
                        f_mtc_check_TP_GM_PCSCF_487INVITE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 25
                        f_mtc_check_TP_GM_PCSCF_487INVITE_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 25


                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 26
                        f_mtc_check_TP_GM_PCSCF_ECO_ACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 26
@@ -2992,7 +2992,7 @@ module AtsImsIot_Emergency {
						f_mtc_userRadioEnabled ( v_ueA, false, true );
						f_mtc_userRadioEnabled ( v_ueA, false, true );
						// test body
						// test body
						// Check that user A starts initial network attachment
						// Check that user A starts initial network attachment
						f_mtc_check_TP_GX_PCRF_ECO_CCA_02 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 3)
						f_mtc_check_TP_GX_PCRF_EMC_CCA_01(vc_vxlte_monitor_components.gx, false);//f_mtc_check_TP_GX_PCRF_ECO_CCA_02 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 3)


						//postamble
						//postamble


+18 −18
Original line number Original line Diff line number Diff line
@@ -272,7 +272,7 @@ module AtsImsIot_TP_behavior_GM {
                                                         in boolean p_checkMessage := false
                                                         in boolean p_checkMessage := false
                                                         ) runs on ImsTestCoordinator {
                                                         ) runs on ImsTestCoordinator {
            if (isvalue(p_monitorCompRef)) {
            if (isvalue(p_monitorCompRef)) {
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A);
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A_EMERGENCY);
                var SipMessage v_sip;
                var SipMessage v_sip;
                
                
                // Check the first REGISTER
                // Check the first REGISTER
@@ -488,7 +488,7 @@ module AtsImsIot_TP_behavior_GM {
                                                         in boolean p_checkMessage := false
                                                         in boolean p_checkMessage := false
                                                         ) runs on ImsTestCoordinator {
                                                         ) runs on ImsTestCoordinator {
            if (isvalue(p_monitorCompRef)){
            if (isvalue(p_monitorCompRef)){
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A);
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A_EMERGENCY);
                var SipMessage v_sip;
                var SipMessage v_sip;
                
                
                // Check the first REGISTER
                // Check the first REGISTER
@@ -675,7 +675,7 @@ module AtsImsIot_TP_behavior_GM {
                                                         in boolean p_checkMessage := false
                                                         in boolean p_checkMessage := false
                                                         ) runs on ImsTestCoordinator {
                                                         ) runs on ImsTestCoordinator {
            if (isvalue(p_monitorCompRef)) {
            if (isvalue(p_monitorCompRef)) {
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A); // User removed from HSS
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A_EMERGENCY); // User removed from HSS
                var SipMessage v_sip;
                var SipMessage v_sip;
                
                
                // Check the first REGISTER
                // Check the first REGISTER
@@ -828,7 +828,7 @@ module AtsImsIot_TP_behavior_GM {
                                                         in boolean p_checkMessage := false
                                                         in boolean p_checkMessage := false
                                                         ) runs on ImsTestCoordinator {
                                                         ) runs on ImsTestCoordinator {
            if (isvalue(p_monitorCompRef)){
            if (isvalue(p_monitorCompRef)){
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A);
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A_EMERGENCY);
                var SipMessage v_sip;
                var SipMessage v_sip;
                
                
                // Check the first REGISTER
                // Check the first REGISTER
@@ -947,7 +947,7 @@ module AtsImsIot_TP_behavior_GM {
                                                         in boolean p_checkMessage := false
                                                         in boolean p_checkMessage := false
                                                         ) runs on ImsTestCoordinator {
                                                         ) runs on ImsTestCoordinator {
            if (isvalue(p_monitorCompRef)){
            if (isvalue(p_monitorCompRef)){
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A);
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A_EMERGENCY);
                var SipMessage v_sip;
                var SipMessage v_sip;
                
                
                // Check the first REGISTER
                // Check the first REGISTER
@@ -1548,15 +1548,15 @@ module AtsImsIot_TP_behavior_GM {
                                                       ) runs on ImsTestCoordinator {
                                                       ) runs on ImsTestCoordinator {
            if (isvalue(p_monitorCompRef)){
            if (isvalue(p_monitorCompRef)){
                var ImsUserInfo v_userInfoA := f_getTelUserId(PX_EUT_A_EMERGENCY);
                var ImsUserInfo v_userInfoA := f_getTelUserId(PX_EUT_A_EMERGENCY);
                var ImsUserInfo v_userInfoB := f_getTelUserId(PX_PSAP);
                var ImsUserInfo v_psap := f_getTelUserId(PX_PSAP);
                
                
                // Check the INVITE
                // Check the INVITE
                p_monitorCompRef.start(
                p_monitorCompRef.start(
                                       f_Iot_Sip_receive(
                                       f_Iot_Sip_receive(
                                                        { mw_SipRequest(mw_TP_GM_PCSCF_ECO_INVITE_01(
                                                        { mw_SipRequest(mw_TP_GM_PCSCF_ECO_INVITE_01(
                                                                                                     -, // FIXME Set expected value
                                                                                                     -, // FIXME Set expected value
                                                                                                     mw_SipUrl_Anonymous,
                                                                                                     mw_From_AddrUnion_TelUrl(mw_SipUrl_Anonymous.components.sip.userInfo.userOrTelephoneSubscriber),
                                                                                                     mw_To_AddrUnion_TelUrl(v_userInfoB.publicId)
                                                                                                     mw_To_AddrUnion_TelUrl(v_psap.publicId)
                                                                                                     ))
                                                                                                     ))
                                                        },
                                                        },
                                                        { mw_SipRequest(mw_INVITE_Request_Base) },
                                                        { mw_SipRequest(mw_INVITE_Request_Base) },
@@ -1774,8 +1774,8 @@ module AtsImsIot_TP_behavior_GM {
                                                       out SipMessage p_sip
                                                       out SipMessage p_sip
                                                       ) runs on ImsTestCoordinator {
                                                       ) runs on ImsTestCoordinator {
             if (isvalue(p_monitorCompRef)){
             if (isvalue(p_monitorCompRef)){
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A);
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A_EMERGENCY);
                var ImsUserInfo v_userInfoB := f_getSipUserId(PX_EUT_B);
                var ImsUserInfo v_psap := f_getSipUserId(PX_PSAP);
                
                
                // Check the INVITE
                // Check the INVITE
                p_monitorCompRef.start(
                p_monitorCompRef.start(
@@ -1784,7 +1784,7 @@ module AtsImsIot_TP_behavior_GM {
                                                            mw_SipRequest(mw_TP_GM_PCSCF_ECO_INVITE_03(
                                                            mw_SipRequest(mw_TP_GM_PCSCF_ECO_INVITE_03(
                                                                                                       -, // FIXME Set expected value
                                                                                                       -, // FIXME Set expected value
                                                                                                       mw_From_AddrUnion_SipUrl(omit, v_userInfoA.publicId, v_userInfoA.domain),
                                                                                                       mw_From_AddrUnion_SipUrl(omit, v_userInfoA.publicId, v_userInfoA.domain),
                                                                                                       mw_To_AddrUnion_SipUrl(omit, v_userInfoB.publicId, v_userInfoB.domain)
                                                                                                       mw_To_AddrUnion_SipUrl(omit, v_psap.publicId, v_psap.domain)
                                                                                                       ))
                                                                                                       ))
                                                        },
                                                        },
                                                        { mw_SipRequest(mw_INVITE_Request_Base) },
                                                        { mw_SipRequest(mw_INVITE_Request_Base) },
@@ -1834,8 +1834,8 @@ module AtsImsIot_TP_behavior_GM {
                                                       out SipMessage p_sip
                                                       out SipMessage p_sip
                                                       ) runs on ImsTestCoordinator {
                                                       ) runs on ImsTestCoordinator {
             if (isvalue(p_monitorCompRef)){
             if (isvalue(p_monitorCompRef)){
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A);
                var ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A_EMERGENCY);
                var ImsUserInfo v_userInfoB := f_getSipUserId(PX_EUT_B);
                var ImsUserInfo v_psap := f_getSipUserId(PX_PSAP);
                
                
                // Check the INVITE
                // Check the INVITE
                p_monitorCompRef.start(
                p_monitorCompRef.start(
@@ -1844,11 +1844,11 @@ module AtsImsIot_TP_behavior_GM {
                                                            mw_SipRequest(mw_TP_GM_PCSCF_ECO_INVITE_04(
                                                            mw_SipRequest(mw_TP_GM_PCSCF_ECO_INVITE_04(
                                                                                                       -, // FIXME Set expected value
                                                                                                       -, // FIXME Set expected value
                                                                                                       mw_From_AddrUnion_SipUrl(omit, v_userInfoA.publicId, v_userInfoA.domain),
                                                                                                       mw_From_AddrUnion_SipUrl(omit, v_userInfoA.publicId, v_userInfoA.domain),
                                                                                                       mw_To_AddrUnion_SipUrl(omit, v_userInfoB.publicId, v_userInfoB.domain),
                                                                                                       mw_To_AddrUnion_SipUrl(omit, v_psap.publicId, v_psap.domain),
                                                                                                       -, -,
                                                                                                       -, -,
                                                                                                       mw_PPreferredID,
                                                                                                       mw_PPreferredID,
                                                                                                       mw_accept({mw_acceptBody("application/EmergencyCallData.Control+xml")}),
                                                                                                       mw_accept({mw_acceptBody("application/EmergencyCallData.Control+xml")}),
                                                                                                       mw_recevInfo({mw_infoPackage_Type("EmergencyCallData.eCall.MSD")})
                                                                                                       mw_recvInfo({mw_infoPackage_Type("EmergencyCallData.eCall.MSD")})
                                                                                                       ))
                                                                                                       ))
                                                        },
                                                        },
                                                        { mw_SipRequest(mw_INVITE_Request_Base) },
                                                        { mw_SipRequest(mw_INVITE_Request_Base) },
+1 −765

File changed.

Preview size limit exceeded, changes collapsed.

+906 −61

File changed.

Preview size limit exceeded, changes collapsed.

+25 −1
Original line number Original line Diff line number Diff line
@@ -11,12 +11,21 @@ module AtsImsIot_Templates {
    import from LibIot_TypesAndValues all;
    import from LibIot_TypesAndValues all;
    import from AtsImsIot_TypesAndValues all;
    import from AtsImsIot_TypesAndValues all;
    import from LibSip_SIPTypesAndValues all;
    import from LibSip_SIPTypesAndValues all;
    import from LibSip_MessageBodyTypes all;
    import from LibSip_XMLTypes all;
    import from LibSip_Templates all;
    import from LibSip_Templates all;
    import from LibSip_Common all;
    import from LibSip_Common all;
    import from LibMsrp_TypesAndValues all;
    import from LibMsrp_TypesAndValues all;
    import from LibIms_Templates all;
    import from LibIot_PIXITS all;
    import from LibIot_PIXITS all;
    import from AtsImsIot_PIXITS all;
    import from AtsImsIot_PIXITS all;


    import from XSD all;
    import from NoTargetNamespace language "XSD" all
    with {
        extension "File:../xsd/Ims3gpp.xsd";
    }
    
    group adapterMsgTemplates {
    group adapterMsgTemplates {
        template SetFilterReq m_SetFilterReq(ProtocolFilter p_protocol, InterfaceInfoList p_iterfaces)    := {
        template SetFilterReq m_SetFilterReq(ProtocolFilter p_protocol, InterfaceInfoList p_iterfaces)    := {
            protocol := p_protocol,
            protocol := p_protocol,
@@ -2565,7 +2574,7 @@ module AtsImsIot_Templates {
                                              template InfoPackage_List p_infoPackageList := ?
                                              template InfoPackage_List p_infoPackageList := ?
                                              ) := {
                                              ) := {
        fieldName       := RECV_INFO_E,
        fieldName       := RECV_INFO_E,
        infoPackageList := l_infoPackageList
        infoPackageList := p_infoPackageList
      }
      }


        template(present) PPreferredID mw_PPreferredID(
        template(present) PPreferredID mw_PPreferredID(
@@ -2664,6 +2673,21 @@ module AtsImsIot_Templates {


    } // End of group AuxiliaryInformationElementTemplates
    } // End of group AuxiliaryInformationElementTemplates


    group messageBody_XML {

      template(present) TIMS3GPP mw_Ims_Eco_3gpp_CW modifies mw_Ims_3gpp_CW := {
          choice := {
              alternative_service := {
                  type_ := {
                    attr     := { "emergency" }, 
                    elem_list := ?
                  }
              }
          }
      }

    } // End of group messageBody_XML

      group adapterTemplates {
      group adapterTemplates {
    
    
        template GeneralConfigurationReq m_generalConfigurationReq_offline := {
        template GeneralConfigurationReq m_generalConfigurationReq_offline := {
Loading