Loading ttcn/AtsImsIot/AtsImsIot_Diameter_Templates.ttcn +11 −11 Original line number Diff line number Diff line Loading @@ -1195,19 +1195,19 @@ module AtsImsIot_Diameter_Templates { group S9RequestBasicTemplates{ template AAR_MSG mw_AAR_S9_basic modifies mw_AAR_dummy := { header := mw_diameterHeaderReq_dummy(AAR_E, c_applIdRx/*TODO c_applIdS9*/) header := mw_diameterHeaderReq_dummy(AAR_E, ?/*TODO c_applIdS9*/) } template ASR_MSG mw_ASR_S9_basic modifies mw_ASR_dummy := { header := mw_diameterHeaderReq_dummy(ASR_E, c_applIdRx/*TODO c_applIdS9*/) header := mw_diameterHeaderReq_dummy(ASR_E, ?/*TODO c_applIdS9*/) } template CCR_MSG mw_CCR_S9_basic modifies mw_CCR_dummy := { header := mw_diameterHeaderReq_dummy(CCR_E, c_applIdGx/*TODO c_applIdS9*/) header := mw_diameterHeaderReq_dummy(CCR_E, ?/*TODO c_applIdS9*/) } template STR_MSG mw_STR_S9_basic modifies mw_STR_dummy := { header := mw_diameterHeaderReq_dummy(STR_E, c_applIdGx/*TODO c_applIdS9*/) header := mw_diameterHeaderReq_dummy(STR_E, ?/*TODO c_applIdS9*/) } } Loading @@ -1222,14 +1222,14 @@ module AtsImsIot_Diameter_Templates { template CCR_MSG mw_CCR_S9_Establishment(CC_Request_Ty_Type p_avpData) modifies mw_CCR_S9_basic := { cCR_Body :={ cC_Request_Type := mw_cC_Request_Type(p_avpData), subscription_Id := {mw_subscription_Id(mw_subscription_Id_Type(END_USER_IMSI_E))}, subscription_Id := {*,mw_subscription_Id(mw_subscription_Id_Type(END_USER_IMSI_E))}, iP_CAN_Type := ?, rat_Type := ?, called_Station_Id := ?, pDN_Connection_ID := ?, pDN_Connection_ID := *, framed_IP_Address := ?, //framed_IPv6_Prefix := *, bearer_Usage := mw_bearer_Usage(IMS_SIGNALLING_E), bearer_Usage := *,//mw_bearer_Usage(IMS_SIGNALLING_E), qoS_Information := mw_qoS_Information, default_EPS_Bearer_QoS := mw_default_EPS_Bearer_QoS_Class_5, subsesion_Enforcement_Info := ? //AXR {mw_subses_Enforcement_Info(mw_subsession_Operation_AVP (ESTABLISHMENT_E))} Loading @@ -1248,19 +1248,19 @@ module AtsImsIot_Diameter_Templates { group S9AnswerBasicTemplates{ template AAA_MSG mw_AAA_S9_basic modifies mw_AAA_dummy := { header := mw_diameterHeaderAns_dummy(AAA_E, c_applIdRx/*TODO c_applIdS9*/) header := mw_diameterHeaderAns_dummy(AAA_E, ?/*TODO c_applIdS9*/) } template ASA_MSG mw_ASA_S9_basic modifies mw_ASA_dummy := { header := mw_diameterHeaderAns_dummy(ASA_E, c_applIdRx/*TODO c_applIdS9*/) header := mw_diameterHeaderAns_dummy(ASA_E, ?/*TODO c_applIdS9*/) } template CCA_MSG mw_CCA_S9_basic modifies mw_CCA_dummy := { header := mw_diameterHeaderAns_dummy(CCA_E, c_applIdGx/*TODO c_applIdS9*/) header := mw_diameterHeaderAns_dummy(CCA_E, ?/*TODO c_applIdS9*/) } template STA_MSG mw_STA_S9_basic modifies mw_STA_dummy := { header := mw_diameterHeaderAns_dummy(STA_E, c_applIdGx/*TODO c_applIdS9*/) header := mw_diameterHeaderAns_dummy(STA_E, ?/*TODO c_applIdS9*/) } } Loading ttcn/AtsImsIot/AtsImsIot_Functions.ttcn +9 −0 Original line number Diff line number Diff line Loading @@ -2291,6 +2291,15 @@ module AtsImsIot_Functions { } } /** * @desc Get the P-CSCF FQDN address of referenced EUT * @return if a P-CSCF is avaiable, the IP Address of the P-CSCF, * otherwise error_string */ function f_GetEUTPcscfIpAddress_1() return charstring { return PX_SIP_MW_P_CSCF_IPADDR; } /** * @desc Get the P-CSCF FQDN address of referenced EUT * @return if a PCSCF is avaiable, the domainname of the PCSCF, Loading ttcn/AtsImsIot/AtsImsIot_TD_ATT.ttcn +73 −107 Original line number Diff line number Diff line /** * @author STF 574 * @author STF 574, TTF 006 * @version $Id: $ * @desc This module provides ATS specific test case definitions for Network Attachment. * @see ETSI TS 103 653-2 (2020) * @see ETSI TS 103 653-2 (2021) */ module AtsImsIot_TD_ATT{ Loading Loading @@ -46,41 +46,31 @@ module AtsImsIot_TD_ATT{ testcase TC_VxLTE_INT_ATT_01 ( ) runs on ImsTestCoordinator system IotSystemInterface { var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); //var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); //var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); f_setVxLteMonIterfacesAvailability(); //Check required monitor interfaces due to TD if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_S9_INTERFACENAME,PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_S6A_INTERFACENAME})){ if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_S6A_INTERFACENAME})){ f_cf_createVxLteMonitor(); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); //f_cf_user_up ( v_ueB ); f_cf_VxLteMonitor_Up(); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile //f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body // Check that user A can register to IMS A //f_mtc_userRegistration ( v_ueA, v_userInfoA ); // Send REGISTER request message //f_mtc_check_TP_S6A_MME_ULR_01 ( vc_vxlte_monitor_components.s6a, true ); // Check (ULR – Event 2) // Check that user A starts initial network attachment f_mtc_check_TP_S6A_MME_ULR_01 ( vc_vxlte_monitor_components.s6a, true ); // Check (ULR – Event 2) f_mtc_check_TP_S6A_HSS_ULA_01 ( vc_vxlte_monitor_components.s6a); // Check (ULA – Event 3) f_mtc_check_TP_GX_PCRF_CCA_01 ( vc_vxlte_monitor_components.gx); // Check (CCR, CCA – Events 4, 5) //f_mtc_userCheckRegistration ( v_ueA, f_getAnyValidUser ( PX_EUT_A ) ); // postamble //f_PO_user_home_deregistration ( v_ueB ); //f_PO_user_home_deregistration ( v_ueA ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnect component ports //f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_VxLteMonitor_Down(); f_cf_adapter_down ( ); Loading @@ -103,9 +93,7 @@ module AtsImsIot_TD_ATT{ testcase TC_VxLTE_RMI_ATT_01 ( ) runs on ImsTestCoordinator system IotSystemInterface { var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); //var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); //var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); f_setVxLteMonIterfacesAvailability(); //Check required monitor interfaces due to TD Loading @@ -115,35 +103,26 @@ module AtsImsIot_TD_ATT{ // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); //f_cf_user_up ( v_ueB ); f_cf_VxLteMonitor_Up(); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile //f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body // Check that user A can register to IMS A //f_mtc_userRegistration ( v_ueA, v_userInfoA ); // Send REGISTER request message //f_mtc_check_TP_EPC_6002_01 ( vc_vxlte_monitor_components.gmA, false ); // Check f_mtc_check_TP_S6A_MME_AIR_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (AIR – Event 2) f_mtc_check_TP_S6A_HSS_AIA_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (AIA – Event 3) f_mtc_check_TP_S6A_MME_ULR_02 ( vc_vxlte_monitor_components.s6a, false ); // Check (ULR – Event 4) f_mtc_check_TP_S6A_HSS_ULA_02 ( vc_vxlte_monitor_components.s6a, false ); // Check (ULA – Event 5) f_mtc_check_TP_GX_PGW_CCR_01 ( vc_vxlte_monitor_components.gx, false ); // Check (CCR - Event 6) f_mtc_check_TP_S9_PCRF_CCR_01 ( vc_vxlte_monitor_components.s9, false ); // Check (CCA – Event 7) f_mtc_check_TP_S9_PCRF_CCA_01 ( vc_vxlte_monitor_components.s9, false ); // Check (CCA - Event 8) f_mtc_check_TP_GX_PCRF_CCA_01 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA - Event 9) //f_mtc_userCheckRegistration ( v_ueA, f_getAnyValidUser ( PX_EUT_A ) ); //f_mtc_check_TP_EPC_6003_01 ( v_ueA, c_vxlte_monitor_components.gmA, v_ueB, c_vxlte_monitor_components.gmB ); // Test sequence #4-5 // Check that user A starts initial network attachment f_mtc_check_TP_S6A_MME_AIR_01 ( vc_vxlte_monitor_components.s6a); // Check (AIR – Event 2) //Not yet validate f_mtc_check_TP_S6A_HSS_AIA_01 ( vc_vxlte_monitor_components.s6a); // Check (AIA – Event 3) //Not yet valiated f_mtc_check_TP_S6A_MME_ULR_02 ( vc_vxlte_monitor_components.s6a, true ); // Check (ULR – Event 4) f_mtc_check_TP_S6A_HSS_ULA_02 ( vc_vxlte_monitor_components.s6a); // Check (ULA – Event 5) f_mtc_check_TP_GX_PGW_CCR_01 ( vc_vxlte_monitor_components.gx, true); // Check (CCR - Event 6) f_mtc_check_TP_S9_PCRF_CCR_01 ( vc_vxlte_monitor_components.s9); // Check (CCA – Event 7) f_mtc_check_TP_S9_PCRF_CCA_01 ( vc_vxlte_monitor_components.s9); // Check (CCA - Event 8) f_mtc_check_TP_GX_PCRF_CCA_01 ( vc_vxlte_monitor_components.gx); // Check (CCA - Event 9) // postamble //f_PO_user_home_deregistration ( v_ueB ); //f_PO_user_home_deregistration ( v_ueA ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnect component ports //f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_VxLteMonitor_Down(); f_cf_adapter_down ( ); Loading @@ -162,42 +141,29 @@ module AtsImsIot_TD_ATT{ testcase TC_VxLTE_RMI_ATT_02 ( ) runs on ImsTestCoordinator system IotSystemInterface { var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); //var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); //var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); f_setVxLteMonIterfacesAvailability(); if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_S6A_INTERFACENAME})){ if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_S9_INTERFACENAME,PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_S6A_INTERFACENAME})){ f_cf_createVxLteMonitor(); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); //f_cf_user_up ( v_ueB ); f_cf_VxLteMonitor_Up(); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile //f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body // Check that user A can register to IMS A //f_mtc_userRegistration ( v_ueA, v_userInfoA ); // Send REGISTER request message //f_mtc_check_TP_EPC_6002_01 ( vc_vxlte_monitor_components.gmA, false ); // Check f_mtc_check_TP_S6A_MME_ULR_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (ULR – Event 2) f_mtc_check_TP_S6A_HSS_ULA_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (ULA – Event 3) f_mtc_check_TP_GX_PGW_CCR_01 ( vc_vxlte_monitor_components.gx, false ); // Check (CCR - Event 4) f_mtc_check_TP_GX_PCRF_CCA_01 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 5) //f_mtc_userCheckRegistration ( v_ueA, f_getAnyValidUser ( PX_EUT_A ) ); //f_mtc_check_TP_EPC_6003_01 ( v_ueA, c_vxlte_monitor_components.gmA, v_ueB, c_vxlte_monitor_components.gmB ); // Test sequence #4-5 // Check that user A starts initial network attachment f_mtc_check_TP_S6A_MME_ULR_01 ( vc_vxlte_monitor_components.s6a, true); // Check (ULR – Event 2) f_mtc_check_TP_S6A_HSS_ULA_01 ( vc_vxlte_monitor_components.s6a); // Check (ULA – Event 3) // postamble //f_PO_user_home_deregistration ( v_ueB ); //f_PO_user_home_deregistration ( v_ueA ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnect component ports //f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_VxLteMonitor_Down(); f_cf_adapter_down ( ); Loading ttcn/AtsImsIot/AtsImsIot_TD_DRG.ttcn +2 −20 Original line number Diff line number Diff line /** * @author STF 574 * @author STF 574, TTF 006 * @version $Id: $ * @desc This module provides ATS specific test case definitions for IMS Registration. * @see ETSI TS 103 653-2 (2020) Loading Loading @@ -200,6 +200,7 @@ module AtsImsIot_TD_DRG{ //f_mtc_check_TP_MW_SCSCF_REGISTER_07(vc_vxlte_monitor_components.mwSI, false, true); // Event 8 f_mtc_check_TP_GM_PCSCF_NOTIFY_01(vc_vxlte_monitor_components.gmA); // Events 11, 12 f_mtc_check_TP_MW_PCSCF_NOTIFY_01(vc_vxlte_monitor_components.mwPS); // Events 11, 12 //f_mtc_check_TP_MW_SCSCF_NOTIFY_01(vc_vxlte_monitor_components.mwIB, false, true); // Event 10, 13 Loading Loading @@ -356,8 +357,6 @@ module AtsImsIot_TD_DRG{ PX_SIP_MW_PI_INTERFACENAME, PX_SIP_MW_IS_INTERFACENAME, PX_SIP_IC_INTERFACENAME, PX_DIAMETER_CX_SH_INTERFACENAME, PX_DIAMETER_CX_IH_INTERFACENAME, PX_DIAMETER_RX_INTERFACENAME, PX_DIAMETER_GX_INTERFACENAME, PX_DIAMETER_S9_INTERFACENAME})) Loading @@ -381,9 +380,6 @@ module AtsImsIot_TD_DRG{ f_mtc_check_TP_IC_IBCF_REGISTER_03(vc_vxlte_monitor_components.ic, false); // Event 3 //f_mtc_check_TP_MW_ICSCF_REGISTER_08(vc_vxlte_monitor_components.mwIS, false, true); // Event 4 f_mtc_check_TP_CX_HSS_UAA_04(f_getCxInterface(PX_DIAMETER_CX_SINGLE_INTERFACE));// Event 5, 6 f_mtc_check_TP_CX_HSS_SAA_02(vc_vxlte_monitor_components.cxSH);// Event 8, 9 f_mtc_check_TP_RX_PCSCF_STR_07(vc_vxlte_monitor_components.rx);// Event 15 f_mtc_check_TP_S9_PCRF_STR_01(vc_vxlte_monitor_components.s9);// Event 16 f_mtc_check_TP_S9_PCRF_STA_02(vc_vxlte_monitor_components.s9);// Event 17 Loading Loading @@ -421,8 +417,6 @@ module AtsImsIot_TD_DRG{ PX_SIP_MW_PI_INTERFACENAME, PX_SIP_MW_IS_INTERFACENAME, PX_SIP_IC_INTERFACENAME, PX_DIAMETER_CX_SH_INTERFACENAME, PX_DIAMETER_CX_IH_INTERFACENAME, PX_DIAMETER_RX_INTERFACENAME, PX_DIAMETER_GX_INTERFACENAME, PX_DIAMETER_S9_INTERFACENAME})) Loading @@ -439,8 +433,6 @@ module AtsImsIot_TD_DRG{ // test body f_mtc_check_TP_CX_HSS_RTA_01(f_getCxInterface(PX_DIAMETER_CX_SINGLE_INTERFACE));// Event 1, 16 //f_mtc_check_TP_MW_SCSCF_NOTIFY_03(vc_vxlte_monitor_components.mwIS, false, true); // Event 2, 9 f_mtc_check_TP_IC_IBCF_NOTIFY_01(vc_vxlte_monitor_components.ic, false); // Events 3, 8 //f_mtc_check_TP_MW_PCSCF_NOTIFY_03(vc_vxlte_monitor_components.mwPS, false, true); // Event 4, 7 Loading Loading @@ -484,8 +476,6 @@ module AtsImsIot_TD_DRG{ PX_SIP_MW_PI_INTERFACENAME, PX_SIP_MW_IS_INTERFACENAME, PX_SIP_IC_INTERFACENAME, PX_DIAMETER_CX_SH_INTERFACENAME, PX_DIAMETER_CX_IH_INTERFACENAME, PX_DIAMETER_RX_INTERFACENAME, PX_DIAMETER_GX_INTERFACENAME, PX_DIAMETER_S9_INTERFACENAME})) Loading @@ -508,12 +498,9 @@ module AtsImsIot_TD_DRG{ //f_mtc_check_TP_MW_PCSCF_REGISTER_12(vc_vxlte_monitor_components.mwPS, false, true); // Event 3 f_mtc_check_TP_IC_IBCF_REGISTER_04(vc_vxlte_monitor_components.ic, false); // Event 4, 13 f_mtc_check_TP_CX_HSS_UAA_04(f_getCxInterface(PX_DIAMETER_CX_SINGLE_INTERFACE));// Event 6, 7 //f_mtc_check_TP_MW_SCSCF_REGISTER_12(vc_vxlte_monitor_components.mwIS, false, true); // Event 8 f_mtc_check_TP_CX_HSS_SAA_02(vc_vxlte_monitor_components.cxSH);// Event 9, 10 //f_mtc_check_TP_MW_SCSCF_NOTIFY_03(vc_vxlte_monitor_components.mwIS, false, true); // Event 15, 22 f_mtc_check_TP_IC_IBCF_NOTIFY_01(vc_vxlte_monitor_components.ic, false); // Event 16, 21 //f_mtc_check_TP_MW_PCSCF_NOTIFY_03(vc_vxlte_monitor_components.mwPS, false, true); // Event 17, 20 Loading Loading @@ -554,8 +541,6 @@ module AtsImsIot_TD_DRG{ PX_SIP_MW_PI_INTERFACENAME, PX_SIP_MW_IS_INTERFACENAME, PX_SIP_IC_INTERFACENAME, PX_DIAMETER_CX_SH_INTERFACENAME, PX_DIAMETER_CX_IH_INTERFACENAME, PX_DIAMETER_RX_INTERFACENAME, PX_DIAMETER_GX_INTERFACENAME, PX_DIAMETER_S9_INTERFACENAME})) Loading @@ -579,9 +564,6 @@ module AtsImsIot_TD_DRG{ //f_mtc_check_TP_MW_ICSCF_BYE_07(vc_vxlte_monitor_components.mwIS, false, true); // Event 9, 13 f_mtc_check_TP_IC_IBCF_BYE_02(vc_vxlte_monitor_components.ic, false); // Event 10, 24 f_mtc_check_TP_CX_HSS_UAA_04(f_getCxInterface(PX_DIAMETER_CX_SINGLE_INTERFACE));// Event 6, 7 f_mtc_check_TP_CX_HSS_SAA_02(vc_vxlte_monitor_components.cxSH);// Event 14, 15 f_mtc_check_TP_RX_PCSCF_STR_01(vc_vxlte_monitor_components.rx);// Event 16 f_mtc_check_TP_S9_PCRF_STR_01(vc_vxlte_monitor_components.s9);// Event 17 f_mtc_check_TP_S9_PCRF_STA_02(vc_vxlte_monitor_components.s9);// Event 18 Loading ttcn/AtsImsIot/AtsImsIot_TD_DTC.ttcn +4 −38 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
ttcn/AtsImsIot/AtsImsIot_Diameter_Templates.ttcn +11 −11 Original line number Diff line number Diff line Loading @@ -1195,19 +1195,19 @@ module AtsImsIot_Diameter_Templates { group S9RequestBasicTemplates{ template AAR_MSG mw_AAR_S9_basic modifies mw_AAR_dummy := { header := mw_diameterHeaderReq_dummy(AAR_E, c_applIdRx/*TODO c_applIdS9*/) header := mw_diameterHeaderReq_dummy(AAR_E, ?/*TODO c_applIdS9*/) } template ASR_MSG mw_ASR_S9_basic modifies mw_ASR_dummy := { header := mw_diameterHeaderReq_dummy(ASR_E, c_applIdRx/*TODO c_applIdS9*/) header := mw_diameterHeaderReq_dummy(ASR_E, ?/*TODO c_applIdS9*/) } template CCR_MSG mw_CCR_S9_basic modifies mw_CCR_dummy := { header := mw_diameterHeaderReq_dummy(CCR_E, c_applIdGx/*TODO c_applIdS9*/) header := mw_diameterHeaderReq_dummy(CCR_E, ?/*TODO c_applIdS9*/) } template STR_MSG mw_STR_S9_basic modifies mw_STR_dummy := { header := mw_diameterHeaderReq_dummy(STR_E, c_applIdGx/*TODO c_applIdS9*/) header := mw_diameterHeaderReq_dummy(STR_E, ?/*TODO c_applIdS9*/) } } Loading @@ -1222,14 +1222,14 @@ module AtsImsIot_Diameter_Templates { template CCR_MSG mw_CCR_S9_Establishment(CC_Request_Ty_Type p_avpData) modifies mw_CCR_S9_basic := { cCR_Body :={ cC_Request_Type := mw_cC_Request_Type(p_avpData), subscription_Id := {mw_subscription_Id(mw_subscription_Id_Type(END_USER_IMSI_E))}, subscription_Id := {*,mw_subscription_Id(mw_subscription_Id_Type(END_USER_IMSI_E))}, iP_CAN_Type := ?, rat_Type := ?, called_Station_Id := ?, pDN_Connection_ID := ?, pDN_Connection_ID := *, framed_IP_Address := ?, //framed_IPv6_Prefix := *, bearer_Usage := mw_bearer_Usage(IMS_SIGNALLING_E), bearer_Usage := *,//mw_bearer_Usage(IMS_SIGNALLING_E), qoS_Information := mw_qoS_Information, default_EPS_Bearer_QoS := mw_default_EPS_Bearer_QoS_Class_5, subsesion_Enforcement_Info := ? //AXR {mw_subses_Enforcement_Info(mw_subsession_Operation_AVP (ESTABLISHMENT_E))} Loading @@ -1248,19 +1248,19 @@ module AtsImsIot_Diameter_Templates { group S9AnswerBasicTemplates{ template AAA_MSG mw_AAA_S9_basic modifies mw_AAA_dummy := { header := mw_diameterHeaderAns_dummy(AAA_E, c_applIdRx/*TODO c_applIdS9*/) header := mw_diameterHeaderAns_dummy(AAA_E, ?/*TODO c_applIdS9*/) } template ASA_MSG mw_ASA_S9_basic modifies mw_ASA_dummy := { header := mw_diameterHeaderAns_dummy(ASA_E, c_applIdRx/*TODO c_applIdS9*/) header := mw_diameterHeaderAns_dummy(ASA_E, ?/*TODO c_applIdS9*/) } template CCA_MSG mw_CCA_S9_basic modifies mw_CCA_dummy := { header := mw_diameterHeaderAns_dummy(CCA_E, c_applIdGx/*TODO c_applIdS9*/) header := mw_diameterHeaderAns_dummy(CCA_E, ?/*TODO c_applIdS9*/) } template STA_MSG mw_STA_S9_basic modifies mw_STA_dummy := { header := mw_diameterHeaderAns_dummy(STA_E, c_applIdGx/*TODO c_applIdS9*/) header := mw_diameterHeaderAns_dummy(STA_E, ?/*TODO c_applIdS9*/) } } Loading
ttcn/AtsImsIot/AtsImsIot_Functions.ttcn +9 −0 Original line number Diff line number Diff line Loading @@ -2291,6 +2291,15 @@ module AtsImsIot_Functions { } } /** * @desc Get the P-CSCF FQDN address of referenced EUT * @return if a P-CSCF is avaiable, the IP Address of the P-CSCF, * otherwise error_string */ function f_GetEUTPcscfIpAddress_1() return charstring { return PX_SIP_MW_P_CSCF_IPADDR; } /** * @desc Get the P-CSCF FQDN address of referenced EUT * @return if a PCSCF is avaiable, the domainname of the PCSCF, Loading
ttcn/AtsImsIot/AtsImsIot_TD_ATT.ttcn +73 −107 Original line number Diff line number Diff line /** * @author STF 574 * @author STF 574, TTF 006 * @version $Id: $ * @desc This module provides ATS specific test case definitions for Network Attachment. * @see ETSI TS 103 653-2 (2020) * @see ETSI TS 103 653-2 (2021) */ module AtsImsIot_TD_ATT{ Loading Loading @@ -46,41 +46,31 @@ module AtsImsIot_TD_ATT{ testcase TC_VxLTE_INT_ATT_01 ( ) runs on ImsTestCoordinator system IotSystemInterface { var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); //var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); //var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); f_setVxLteMonIterfacesAvailability(); //Check required monitor interfaces due to TD if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_S9_INTERFACENAME,PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_S6A_INTERFACENAME})){ if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_S6A_INTERFACENAME})){ f_cf_createVxLteMonitor(); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); //f_cf_user_up ( v_ueB ); f_cf_VxLteMonitor_Up(); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile //f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body // Check that user A can register to IMS A //f_mtc_userRegistration ( v_ueA, v_userInfoA ); // Send REGISTER request message //f_mtc_check_TP_S6A_MME_ULR_01 ( vc_vxlte_monitor_components.s6a, true ); // Check (ULR – Event 2) // Check that user A starts initial network attachment f_mtc_check_TP_S6A_MME_ULR_01 ( vc_vxlte_monitor_components.s6a, true ); // Check (ULR – Event 2) f_mtc_check_TP_S6A_HSS_ULA_01 ( vc_vxlte_monitor_components.s6a); // Check (ULA – Event 3) f_mtc_check_TP_GX_PCRF_CCA_01 ( vc_vxlte_monitor_components.gx); // Check (CCR, CCA – Events 4, 5) //f_mtc_userCheckRegistration ( v_ueA, f_getAnyValidUser ( PX_EUT_A ) ); // postamble //f_PO_user_home_deregistration ( v_ueB ); //f_PO_user_home_deregistration ( v_ueA ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnect component ports //f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_VxLteMonitor_Down(); f_cf_adapter_down ( ); Loading @@ -103,9 +93,7 @@ module AtsImsIot_TD_ATT{ testcase TC_VxLTE_RMI_ATT_01 ( ) runs on ImsTestCoordinator system IotSystemInterface { var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); //var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); //var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); f_setVxLteMonIterfacesAvailability(); //Check required monitor interfaces due to TD Loading @@ -115,35 +103,26 @@ module AtsImsIot_TD_ATT{ // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); //f_cf_user_up ( v_ueB ); f_cf_VxLteMonitor_Up(); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile //f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body // Check that user A can register to IMS A //f_mtc_userRegistration ( v_ueA, v_userInfoA ); // Send REGISTER request message //f_mtc_check_TP_EPC_6002_01 ( vc_vxlte_monitor_components.gmA, false ); // Check f_mtc_check_TP_S6A_MME_AIR_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (AIR – Event 2) f_mtc_check_TP_S6A_HSS_AIA_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (AIA – Event 3) f_mtc_check_TP_S6A_MME_ULR_02 ( vc_vxlte_monitor_components.s6a, false ); // Check (ULR – Event 4) f_mtc_check_TP_S6A_HSS_ULA_02 ( vc_vxlte_monitor_components.s6a, false ); // Check (ULA – Event 5) f_mtc_check_TP_GX_PGW_CCR_01 ( vc_vxlte_monitor_components.gx, false ); // Check (CCR - Event 6) f_mtc_check_TP_S9_PCRF_CCR_01 ( vc_vxlte_monitor_components.s9, false ); // Check (CCA – Event 7) f_mtc_check_TP_S9_PCRF_CCA_01 ( vc_vxlte_monitor_components.s9, false ); // Check (CCA - Event 8) f_mtc_check_TP_GX_PCRF_CCA_01 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA - Event 9) //f_mtc_userCheckRegistration ( v_ueA, f_getAnyValidUser ( PX_EUT_A ) ); //f_mtc_check_TP_EPC_6003_01 ( v_ueA, c_vxlte_monitor_components.gmA, v_ueB, c_vxlte_monitor_components.gmB ); // Test sequence #4-5 // Check that user A starts initial network attachment f_mtc_check_TP_S6A_MME_AIR_01 ( vc_vxlte_monitor_components.s6a); // Check (AIR – Event 2) //Not yet validate f_mtc_check_TP_S6A_HSS_AIA_01 ( vc_vxlte_monitor_components.s6a); // Check (AIA – Event 3) //Not yet valiated f_mtc_check_TP_S6A_MME_ULR_02 ( vc_vxlte_monitor_components.s6a, true ); // Check (ULR – Event 4) f_mtc_check_TP_S6A_HSS_ULA_02 ( vc_vxlte_monitor_components.s6a); // Check (ULA – Event 5) f_mtc_check_TP_GX_PGW_CCR_01 ( vc_vxlte_monitor_components.gx, true); // Check (CCR - Event 6) f_mtc_check_TP_S9_PCRF_CCR_01 ( vc_vxlte_monitor_components.s9); // Check (CCA – Event 7) f_mtc_check_TP_S9_PCRF_CCA_01 ( vc_vxlte_monitor_components.s9); // Check (CCA - Event 8) f_mtc_check_TP_GX_PCRF_CCA_01 ( vc_vxlte_monitor_components.gx); // Check (CCA - Event 9) // postamble //f_PO_user_home_deregistration ( v_ueB ); //f_PO_user_home_deregistration ( v_ueA ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnect component ports //f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_VxLteMonitor_Down(); f_cf_adapter_down ( ); Loading @@ -162,42 +141,29 @@ module AtsImsIot_TD_ATT{ testcase TC_VxLTE_RMI_ATT_02 ( ) runs on ImsTestCoordinator system IotSystemInterface { var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); //var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); //var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); f_setVxLteMonIterfacesAvailability(); if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_S6A_INTERFACENAME})){ if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_S9_INTERFACENAME,PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_S6A_INTERFACENAME})){ f_cf_createVxLteMonitor(); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); //f_cf_user_up ( v_ueB ); f_cf_VxLteMonitor_Up(); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile //f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body // Check that user A can register to IMS A //f_mtc_userRegistration ( v_ueA, v_userInfoA ); // Send REGISTER request message //f_mtc_check_TP_EPC_6002_01 ( vc_vxlte_monitor_components.gmA, false ); // Check f_mtc_check_TP_S6A_MME_ULR_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (ULR – Event 2) f_mtc_check_TP_S6A_HSS_ULA_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (ULA – Event 3) f_mtc_check_TP_GX_PGW_CCR_01 ( vc_vxlte_monitor_components.gx, false ); // Check (CCR - Event 4) f_mtc_check_TP_GX_PCRF_CCA_01 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 5) //f_mtc_userCheckRegistration ( v_ueA, f_getAnyValidUser ( PX_EUT_A ) ); //f_mtc_check_TP_EPC_6003_01 ( v_ueA, c_vxlte_monitor_components.gmA, v_ueB, c_vxlte_monitor_components.gmB ); // Test sequence #4-5 // Check that user A starts initial network attachment f_mtc_check_TP_S6A_MME_ULR_01 ( vc_vxlte_monitor_components.s6a, true); // Check (ULR – Event 2) f_mtc_check_TP_S6A_HSS_ULA_01 ( vc_vxlte_monitor_components.s6a); // Check (ULA – Event 3) // postamble //f_PO_user_home_deregistration ( v_ueB ); //f_PO_user_home_deregistration ( v_ueA ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnect component ports //f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_VxLteMonitor_Down(); f_cf_adapter_down ( ); Loading
ttcn/AtsImsIot/AtsImsIot_TD_DRG.ttcn +2 −20 Original line number Diff line number Diff line /** * @author STF 574 * @author STF 574, TTF 006 * @version $Id: $ * @desc This module provides ATS specific test case definitions for IMS Registration. * @see ETSI TS 103 653-2 (2020) Loading Loading @@ -200,6 +200,7 @@ module AtsImsIot_TD_DRG{ //f_mtc_check_TP_MW_SCSCF_REGISTER_07(vc_vxlte_monitor_components.mwSI, false, true); // Event 8 f_mtc_check_TP_GM_PCSCF_NOTIFY_01(vc_vxlte_monitor_components.gmA); // Events 11, 12 f_mtc_check_TP_MW_PCSCF_NOTIFY_01(vc_vxlte_monitor_components.mwPS); // Events 11, 12 //f_mtc_check_TP_MW_SCSCF_NOTIFY_01(vc_vxlte_monitor_components.mwIB, false, true); // Event 10, 13 Loading Loading @@ -356,8 +357,6 @@ module AtsImsIot_TD_DRG{ PX_SIP_MW_PI_INTERFACENAME, PX_SIP_MW_IS_INTERFACENAME, PX_SIP_IC_INTERFACENAME, PX_DIAMETER_CX_SH_INTERFACENAME, PX_DIAMETER_CX_IH_INTERFACENAME, PX_DIAMETER_RX_INTERFACENAME, PX_DIAMETER_GX_INTERFACENAME, PX_DIAMETER_S9_INTERFACENAME})) Loading @@ -381,9 +380,6 @@ module AtsImsIot_TD_DRG{ f_mtc_check_TP_IC_IBCF_REGISTER_03(vc_vxlte_monitor_components.ic, false); // Event 3 //f_mtc_check_TP_MW_ICSCF_REGISTER_08(vc_vxlte_monitor_components.mwIS, false, true); // Event 4 f_mtc_check_TP_CX_HSS_UAA_04(f_getCxInterface(PX_DIAMETER_CX_SINGLE_INTERFACE));// Event 5, 6 f_mtc_check_TP_CX_HSS_SAA_02(vc_vxlte_monitor_components.cxSH);// Event 8, 9 f_mtc_check_TP_RX_PCSCF_STR_07(vc_vxlte_monitor_components.rx);// Event 15 f_mtc_check_TP_S9_PCRF_STR_01(vc_vxlte_monitor_components.s9);// Event 16 f_mtc_check_TP_S9_PCRF_STA_02(vc_vxlte_monitor_components.s9);// Event 17 Loading Loading @@ -421,8 +417,6 @@ module AtsImsIot_TD_DRG{ PX_SIP_MW_PI_INTERFACENAME, PX_SIP_MW_IS_INTERFACENAME, PX_SIP_IC_INTERFACENAME, PX_DIAMETER_CX_SH_INTERFACENAME, PX_DIAMETER_CX_IH_INTERFACENAME, PX_DIAMETER_RX_INTERFACENAME, PX_DIAMETER_GX_INTERFACENAME, PX_DIAMETER_S9_INTERFACENAME})) Loading @@ -439,8 +433,6 @@ module AtsImsIot_TD_DRG{ // test body f_mtc_check_TP_CX_HSS_RTA_01(f_getCxInterface(PX_DIAMETER_CX_SINGLE_INTERFACE));// Event 1, 16 //f_mtc_check_TP_MW_SCSCF_NOTIFY_03(vc_vxlte_monitor_components.mwIS, false, true); // Event 2, 9 f_mtc_check_TP_IC_IBCF_NOTIFY_01(vc_vxlte_monitor_components.ic, false); // Events 3, 8 //f_mtc_check_TP_MW_PCSCF_NOTIFY_03(vc_vxlte_monitor_components.mwPS, false, true); // Event 4, 7 Loading Loading @@ -484,8 +476,6 @@ module AtsImsIot_TD_DRG{ PX_SIP_MW_PI_INTERFACENAME, PX_SIP_MW_IS_INTERFACENAME, PX_SIP_IC_INTERFACENAME, PX_DIAMETER_CX_SH_INTERFACENAME, PX_DIAMETER_CX_IH_INTERFACENAME, PX_DIAMETER_RX_INTERFACENAME, PX_DIAMETER_GX_INTERFACENAME, PX_DIAMETER_S9_INTERFACENAME})) Loading @@ -508,12 +498,9 @@ module AtsImsIot_TD_DRG{ //f_mtc_check_TP_MW_PCSCF_REGISTER_12(vc_vxlte_monitor_components.mwPS, false, true); // Event 3 f_mtc_check_TP_IC_IBCF_REGISTER_04(vc_vxlte_monitor_components.ic, false); // Event 4, 13 f_mtc_check_TP_CX_HSS_UAA_04(f_getCxInterface(PX_DIAMETER_CX_SINGLE_INTERFACE));// Event 6, 7 //f_mtc_check_TP_MW_SCSCF_REGISTER_12(vc_vxlte_monitor_components.mwIS, false, true); // Event 8 f_mtc_check_TP_CX_HSS_SAA_02(vc_vxlte_monitor_components.cxSH);// Event 9, 10 //f_mtc_check_TP_MW_SCSCF_NOTIFY_03(vc_vxlte_monitor_components.mwIS, false, true); // Event 15, 22 f_mtc_check_TP_IC_IBCF_NOTIFY_01(vc_vxlte_monitor_components.ic, false); // Event 16, 21 //f_mtc_check_TP_MW_PCSCF_NOTIFY_03(vc_vxlte_monitor_components.mwPS, false, true); // Event 17, 20 Loading Loading @@ -554,8 +541,6 @@ module AtsImsIot_TD_DRG{ PX_SIP_MW_PI_INTERFACENAME, PX_SIP_MW_IS_INTERFACENAME, PX_SIP_IC_INTERFACENAME, PX_DIAMETER_CX_SH_INTERFACENAME, PX_DIAMETER_CX_IH_INTERFACENAME, PX_DIAMETER_RX_INTERFACENAME, PX_DIAMETER_GX_INTERFACENAME, PX_DIAMETER_S9_INTERFACENAME})) Loading @@ -579,9 +564,6 @@ module AtsImsIot_TD_DRG{ //f_mtc_check_TP_MW_ICSCF_BYE_07(vc_vxlte_monitor_components.mwIS, false, true); // Event 9, 13 f_mtc_check_TP_IC_IBCF_BYE_02(vc_vxlte_monitor_components.ic, false); // Event 10, 24 f_mtc_check_TP_CX_HSS_UAA_04(f_getCxInterface(PX_DIAMETER_CX_SINGLE_INTERFACE));// Event 6, 7 f_mtc_check_TP_CX_HSS_SAA_02(vc_vxlte_monitor_components.cxSH);// Event 14, 15 f_mtc_check_TP_RX_PCSCF_STR_01(vc_vxlte_monitor_components.rx);// Event 16 f_mtc_check_TP_S9_PCRF_STR_01(vc_vxlte_monitor_components.s9);// Event 17 f_mtc_check_TP_S9_PCRF_STA_02(vc_vxlte_monitor_components.s9);// Event 18 Loading
ttcn/AtsImsIot/AtsImsIot_TD_DTC.ttcn +4 −38 File changed.Preview size limit exceeded, changes collapsed. Show changes