Loading DiameterS6a/ttcn/DiameterS6a_HSS_TCFunctions.ttcn3 +4 −4 Original line number Diff line number Diff line Loading @@ -31,7 +31,7 @@ module DiameterS6a_HSS_TCFunctions { function f_preamble_HSS, f_postamble_HSS, f_triggerUlrMessage; altstep hss_default altstep a_hss_default }; import from DiameterS6a_TestSystem { type Loading Loading @@ -90,7 +90,7 @@ module DiameterS6a_HSS_TCFunctions { // TODO Set some field in Subscription-Data AVP? )))) { // Expected ULR-Answer message f_selfOrClientSyncAndVerdict(c_tbDone, e_error); log("*** " & __SCOPE__ & ": PASS: Unexpected was received. ***"); log("*** " & __SCOPE__ & ": PASS: Expected was received. ***"); } [] tc_ac.timeout { f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout); Loading Loading @@ -166,7 +166,7 @@ module DiameterS6a_HSS_TCFunctions { // TODO Set some field in Subscription-Data AVP? )))) { // Expected ULR-Answer message f_selfOrClientSyncAndVerdict(c_tbDone, e_error); log("*** " & __SCOPE__ & ": PASS: Unexpected was received. ***"); log("*** " & __SCOPE__ & ": PASS: Expected was received. ***"); } [] tc_ac.timeout { f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout); Loading Loading @@ -229,7 +229,7 @@ module DiameterS6a_HSS_TCFunctions { log("*** " & __SCOPE__ & ": FAIL: Subscription-Data AVP was not expected here. ***"); } else { f_selfOrClientSyncAndVerdict(c_tbDone, e_error); log("*** " & __SCOPE__ & ": PASS: Unexpected was received. ***"); log("*** " & __SCOPE__ & ": PASS: Expected was received. ***"); } } [] tc_ac.timeout { Loading DiameterS6a/ttcn/DiameterS6a_MME_TCFunctions.ttcn3 +100 −4 Original line number Diff line number Diff line Loading @@ -6,28 +6,86 @@ module DiameterS6a_MME_TCFunctions { // LibCommon import from LibCommon_Sync { function f_selfOrClientSyncAndVerdict; const c_prDone, c_tbDone, c_poDone }; //import from LibCommon_VerdictControl all; // LibDiameter import from LibDiameter_Steps { function f_getVerdict }; // DiameterS6a import from DiameterS6a_PICS { modulepar PX_MME_IUT_SUPPORT_NAS_PROTOCOL }; import from DiameterS6a_Templates all; import from DiameterS6a_PIXITS all; import from DiameterS6a_Steps { function f_preamble_MME, f_postamble_MME, f_preamble_NAS, f_postamble_NAS; altstep a_mme_default }; import from DiameterS6a_TestSystem { type TestAdapter type TestAdapter }; // 5.2.1.1 Update Location group updateLocation { /** * @desc Verify that the IUT can indicate request for update location information to inform HSS about the identity of the currently serving user * @verdict pass on success, fail on error or inconc on timeout only */ function f_TC_MME_UL_01() runs on TestAdapter { // Local variables // Preamble f_preamble_MME(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamblue done. ***"); // Test Body // Clause 'when' // Clause 'then' // Clause 'when': Nothing to do // Clause 'then': the IUT sends a UL-Request tc_ac.start; alt { [] HSS_S6a.receive( mw_hssUpdateLocationRequest( mdw_ULR_TCs( vc_sessionId, // containing a Session-ID AVP mdw_ulrBodyAvps_TC_01( m_auth_Session_State_noStateMaintained, // containing an Auth-Session-State AVP indicating NO_STATE_MAINTAINED vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP vc_destinationRealm, // containing a Destination-Realm AVP m_user_Name(PX_USR_NAME), // containing a User-Name AVP m_rAT_Type(PX_RAT_TYPE), // containing a RAT-Type AVP m_ulr_Flags_AVP(PX_ULR_FLAGS_S6a_IND_SET), // containing a ULR-Flags AVP with S6a-indicator bit set m_visitedPLMNId_dummy // containing a Visited-PLMN-ID AVP )))) { f_selfOrClientSyncAndVerdict(c_tbDone, e_error); log("*** " & __SCOPE__ & ": PASS: Expected was received. ***"); } [] tc_ac.timeout { f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout); log("*** " & __SCOPE__ & ": INCONC: Message was not received in due time. ***"); } } // End of 'altstep' statement // Postamble f_postamble_MME(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of TC function f_TC_MME_UL_01 Loading Loading @@ -428,4 +486,42 @@ module DiameterS6a_MME_TCFunctions { } // End of group notification group nasProtocols { function f_TC_NAS_UL_Trigger() runs on TestAdapter { // Local variables // Preamble f_preamble_NAS(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamblue done. ***"); // Test Body // Clause 'when' if (PX_MME_IUT_SUPPORT_NAS_PROTOCOL == true) { // Send NAS-ATTACH-REQUEST } else { action("Switch the UE to initiate ULR"); } // Clause 'then': Nothing to do f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble if (PX_MME_IUT_SUPPORT_NAS_PROTOCOL == true) { // Await for NAS-ATTACH-ACCEPT // Send NAS-DETACH-REQUEST // Await for NAS-DETACH-ACCEPT } else { action("Switch the UE off"); } f_postamble_NAS(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of TC function f_TC_MME_UL_01 } // End of group nasProtocols } // End of module DiameterS6a_MME_TCFunctions No newline at end of file DiameterS6a/ttcn/DiameterS6a_PICS.ttcn3 +6 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,12 @@ module DiameterS6a_PICS { */ modulepar boolean PICS_MME_IUT := false; // FIXME Use one exclusive PIXIT for (PICS_MME_IUT/PICS_HSS_IUT/) - Use unumerated /** * @desc Set to false to trigger NAS-Protocol using the mobile phone * Set to true to trigger true NAS-Protocol messages */ modulepar boolean PX_MME_IUT_SUPPORT_NAS_PROTOCOL := false; /** * @desc Does MME/SGSN act as the IUT? * @see ETSI DTS/INT-094-1 V0.0.3 (2013-11) A.2/1.1 Loading DiameterS6a/ttcn/DiameterS6a_Steps.ttcn3 +59 −7 Original line number Diff line number Diff line Loading @@ -51,30 +51,67 @@ } // End of function f_DiameterGx_init /** * @desc Default altstep activated during the preambule * @desc Default altstep activated during the preambule for MME IUT role */ altstep hss_default() runs on TestAdapter { altstep a_mme_default() runs on TestAdapter { [] HSS_S6a.receive( mw_hssUpdateLocationRequest( mw_S6a_uLR_dummy )) { // Received an unexpected UL-Answer message, process it as an error log("*** a_hss_default: ERROR: Received an unexpected UL-Request message, process it as an error ***"); f_selfOrClientSyncAndVerdict("error", e_error); } [] HSS_S6a.receive { // Received an unexpected message, process it as an error log("*** a_mme_default: ERROR: Received an unexpected message, process it as an error ***"); f_selfOrClientSyncAndVerdict("error", e_error); } [] tc_ac.timeout { log("*** a_mme_default: ERROR: Timeout while awaiting the reception of a message ***"); f_selfOrClientSyncAndVerdict("error", e_timeout); } } // End of altstep a_mme_default /** * @desc Default altstep activated during the preambule for HSS IUT role */ altstep a_hss_default() runs on TestAdapter { [] MME_S6a.receive( mw_mmeUpdateLocationRequest( mw_S6a_ULA_dummy )) { // Received an unexpected UL-Answer message, process it as an error log("*** a_default: ERROR: Received an unexpected UL-Answer message, process it as an error ***"); log("*** a_hss_default: ERROR: Received an unexpected UL-Answer message, process it as an error ***"); f_selfOrClientSyncAndVerdict("error", e_error); } [] MME_S6a.receive { // Received an unexpected message, process it as an error log("*** a_default: ERROR: Received an unexpected message, process it as an error ***"); log("*** a_hss_default: ERROR: Received an unexpected message, process it as an error ***"); f_selfOrClientSyncAndVerdict("error", e_error); } [] tc_ac.timeout { log("*** a_default: ERROR: Timeout while awaiting the reception of a message ***"); log("*** a_hss_default: ERROR: Timeout while awaiting the reception of a message ***"); f_selfOrClientSyncAndVerdict("error", e_timeout); } } // End of altstep hss_default } // End of altstep a_hss_default } // End of group GlobalSteps group Preambles{ group mmeRole { function f_preamble_NAS() runs on TestAdapter { // activate( nas_default( ) ); } function f_preamble_MME() runs on TestAdapter { // Initialilize the component's variables' f_DiameterS6a_init(); // Activate defaults activate( a_mme_default( ) ); } // End of function f_preamble_MME } // End of group mmeRole group hssRole { function f_preamble_HSS() runs on TestAdapter { Loading @@ -82,7 +119,7 @@ f_DiameterS6a_init(); // Activate defaults activate( hss_default( ) ); activate( a_hss_default( ) ); } // End of function f_preamble_HSS } // End of group hssRole Loading @@ -91,9 +128,24 @@ group Postambles { group mmeRole { function f_postamble_NAS() runs on TestAdapter { // Unmap NAS-Protocol port // Deactivate defaults } function f_postamble_MME() runs on TestAdapter { // Deactivate defaults deactivate; } // End of function f_preamble_MME } // End of group mmeRole group hssRole { function f_postamble_HSS() runs on TestAdapter { // Deactivate defaults deactivate; } // End of function f_preamble_HSS Loading DiameterS6a/ttcn/DiameterS6a_Templates.ttcn +60 −12 Original line number Diff line number Diff line Loading @@ -533,11 +533,11 @@ module DiameterS6a_Templates { group S6aDummy_request_templates_receive { template (present) ULR_MSG mw_uLR_dummy := { template (present) ULR_MSG mw_S6a_uLR_dummy := { header := mw_s6adiameterHeaderReq_dummy ( ULx_E, c_applId_S6a ), session_Id := ?, uLR_Body := mw_S6a_ULR_Body_dummy } // End of template mw_uLR_dummy } // End of template mw_S6a_uLR_dummy template (present) ULR_Body_AVP mw_S6a_ULR_Body_dummy := { vendor_Specific_Application_Id := *, Loading Loading @@ -1189,7 +1189,15 @@ module DiameterS6a_Templates { } // End of group S6aBasic_request_templates_send group S9basic_request_templates_receive { group S6basic_request_templates_receive { /** * @desc Main receive template for MME_S6a port * @param p_s6a_CCA_MSG UL-Answer receive template message */ template (present) DIAMETER_S6a_MME_Initiated_Message mw_hssUpdateLocationRequest(in template (present) ULR_MSG p_s6a_ULR_MSG) := { s6a_ULR_MSG := p_s6a_ULR_MSG } // End of tempate mw_hssUpdateLocationRequest /** * @desc Main receive template for MME_S6a port Loading @@ -1199,8 +1207,7 @@ module DiameterS6a_Templates { s6a_CCA_MSG := p_s6a_CCA_MSG } // End of tempate m_mmeUpdateLocationRequest } // End of group S9basic_request_templates_receive } // End of group S6basic_request_templates_receive group S6aBasic_answer_templates_send { } Loading Loading @@ -1358,6 +1365,41 @@ module DiameterS6a_Templates { group S6aModified_request_templates_receive { template (present) ULR_MSG mdw_ULR_TCs( in template (present) Session_Id_AVP p_sessionId, in template (present) ULR_Body_AVP p_ulrBody ) modifies mw_S6a_uLR_dummy := { session_Id := p_sessionId, uLR_Body := p_ulrBody } // End of tempate mdw_ULR_TCs /** * @desc Receive templates for TC_MME_UL_01 */ group t_TC_MME_UL_01 { template (present) ULR_Body_AVP mdw_ulrBodyAvps_TC_01( in template (present) Auth_Session_State_AVP p_auth_Session_State, in template (present) Origin_Host_AVP p_originHost, in template (present) Origin_Realm_AVP p_originRealm, in template (present) Destination_Realm_AVP p_destinationRealm, in template (present) User_Name_AVP p_user_Name, in template (present) RAT_Type_AVP p_rat_Type, in template (present) ULR_Flags_AVP p_ulr_Flags, in template (present) Visited_PLMN_Id_AVP p_visited_PLMN_Id ) modifies mw_S6a_ULR_Body_dummy := { origin_Host := p_originHost, origin_Realm := m_originRealm_dummy, destination_Realm := p_destinationRealm, auth_Session_State := p_auth_Session_State, user_Name := p_user_Name, rat_Type := p_rat_Type, ulr_Flags := p_ulr_Flags, visited_PLMN_Id := p_visited_PLMN_Id } // End of tempate mdw_ulrBodyAvps_TC_01 } // End of group t_TC_MME_UL_01 } // End of group S6aModified_request_templates_receive group S6aModified_answer_templates_send { Loading Loading @@ -1410,6 +1452,9 @@ module DiameterS6a_Templates { } // End of group t_TC_HSS_UL_01 /** * @desc Receive templates for TC_HSS_UL_02 */ group t_TC_HSS_UL_02 { /** Loading Loading @@ -1454,6 +1499,9 @@ module DiameterS6a_Templates { } // End of group t_TC_HSS_UL_02 /** * @desc Receive templates for TC_HSS_UL_03 */ group t_TC_HSS_UL_03 { /** Loading @@ -1465,7 +1513,7 @@ module DiameterS6a_Templates { * @param p_ula_Flags ULA Bit mask */ template (present) ULA_Body_AVP mdw_ulaBodyAvps_TC_03( in template Experimental_Result_AVP p_experimental_Result in template (present) Experimental_Result_AVP p_experimental_Result ) modifies mw_S6a_ULA_Body_dummy := { experimental_Result := p_experimental_Result } // End of template mdw_ulrBodyAvps_TC_03 Loading Loading
DiameterS6a/ttcn/DiameterS6a_HSS_TCFunctions.ttcn3 +4 −4 Original line number Diff line number Diff line Loading @@ -31,7 +31,7 @@ module DiameterS6a_HSS_TCFunctions { function f_preamble_HSS, f_postamble_HSS, f_triggerUlrMessage; altstep hss_default altstep a_hss_default }; import from DiameterS6a_TestSystem { type Loading Loading @@ -90,7 +90,7 @@ module DiameterS6a_HSS_TCFunctions { // TODO Set some field in Subscription-Data AVP? )))) { // Expected ULR-Answer message f_selfOrClientSyncAndVerdict(c_tbDone, e_error); log("*** " & __SCOPE__ & ": PASS: Unexpected was received. ***"); log("*** " & __SCOPE__ & ": PASS: Expected was received. ***"); } [] tc_ac.timeout { f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout); Loading Loading @@ -166,7 +166,7 @@ module DiameterS6a_HSS_TCFunctions { // TODO Set some field in Subscription-Data AVP? )))) { // Expected ULR-Answer message f_selfOrClientSyncAndVerdict(c_tbDone, e_error); log("*** " & __SCOPE__ & ": PASS: Unexpected was received. ***"); log("*** " & __SCOPE__ & ": PASS: Expected was received. ***"); } [] tc_ac.timeout { f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout); Loading Loading @@ -229,7 +229,7 @@ module DiameterS6a_HSS_TCFunctions { log("*** " & __SCOPE__ & ": FAIL: Subscription-Data AVP was not expected here. ***"); } else { f_selfOrClientSyncAndVerdict(c_tbDone, e_error); log("*** " & __SCOPE__ & ": PASS: Unexpected was received. ***"); log("*** " & __SCOPE__ & ": PASS: Expected was received. ***"); } } [] tc_ac.timeout { Loading
DiameterS6a/ttcn/DiameterS6a_MME_TCFunctions.ttcn3 +100 −4 Original line number Diff line number Diff line Loading @@ -6,28 +6,86 @@ module DiameterS6a_MME_TCFunctions { // LibCommon import from LibCommon_Sync { function f_selfOrClientSyncAndVerdict; const c_prDone, c_tbDone, c_poDone }; //import from LibCommon_VerdictControl all; // LibDiameter import from LibDiameter_Steps { function f_getVerdict }; // DiameterS6a import from DiameterS6a_PICS { modulepar PX_MME_IUT_SUPPORT_NAS_PROTOCOL }; import from DiameterS6a_Templates all; import from DiameterS6a_PIXITS all; import from DiameterS6a_Steps { function f_preamble_MME, f_postamble_MME, f_preamble_NAS, f_postamble_NAS; altstep a_mme_default }; import from DiameterS6a_TestSystem { type TestAdapter type TestAdapter }; // 5.2.1.1 Update Location group updateLocation { /** * @desc Verify that the IUT can indicate request for update location information to inform HSS about the identity of the currently serving user * @verdict pass on success, fail on error or inconc on timeout only */ function f_TC_MME_UL_01() runs on TestAdapter { // Local variables // Preamble f_preamble_MME(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamblue done. ***"); // Test Body // Clause 'when' // Clause 'then' // Clause 'when': Nothing to do // Clause 'then': the IUT sends a UL-Request tc_ac.start; alt { [] HSS_S6a.receive( mw_hssUpdateLocationRequest( mdw_ULR_TCs( vc_sessionId, // containing a Session-ID AVP mdw_ulrBodyAvps_TC_01( m_auth_Session_State_noStateMaintained, // containing an Auth-Session-State AVP indicating NO_STATE_MAINTAINED vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP vc_destinationRealm, // containing a Destination-Realm AVP m_user_Name(PX_USR_NAME), // containing a User-Name AVP m_rAT_Type(PX_RAT_TYPE), // containing a RAT-Type AVP m_ulr_Flags_AVP(PX_ULR_FLAGS_S6a_IND_SET), // containing a ULR-Flags AVP with S6a-indicator bit set m_visitedPLMNId_dummy // containing a Visited-PLMN-ID AVP )))) { f_selfOrClientSyncAndVerdict(c_tbDone, e_error); log("*** " & __SCOPE__ & ": PASS: Expected was received. ***"); } [] tc_ac.timeout { f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout); log("*** " & __SCOPE__ & ": INCONC: Message was not received in due time. ***"); } } // End of 'altstep' statement // Postamble f_postamble_MME(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of TC function f_TC_MME_UL_01 Loading Loading @@ -428,4 +486,42 @@ module DiameterS6a_MME_TCFunctions { } // End of group notification group nasProtocols { function f_TC_NAS_UL_Trigger() runs on TestAdapter { // Local variables // Preamble f_preamble_NAS(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamblue done. ***"); // Test Body // Clause 'when' if (PX_MME_IUT_SUPPORT_NAS_PROTOCOL == true) { // Send NAS-ATTACH-REQUEST } else { action("Switch the UE to initiate ULR"); } // Clause 'then': Nothing to do f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble if (PX_MME_IUT_SUPPORT_NAS_PROTOCOL == true) { // Await for NAS-ATTACH-ACCEPT // Send NAS-DETACH-REQUEST // Await for NAS-DETACH-ACCEPT } else { action("Switch the UE off"); } f_postamble_NAS(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of TC function f_TC_MME_UL_01 } // End of group nasProtocols } // End of module DiameterS6a_MME_TCFunctions No newline at end of file
DiameterS6a/ttcn/DiameterS6a_PICS.ttcn3 +6 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,12 @@ module DiameterS6a_PICS { */ modulepar boolean PICS_MME_IUT := false; // FIXME Use one exclusive PIXIT for (PICS_MME_IUT/PICS_HSS_IUT/) - Use unumerated /** * @desc Set to false to trigger NAS-Protocol using the mobile phone * Set to true to trigger true NAS-Protocol messages */ modulepar boolean PX_MME_IUT_SUPPORT_NAS_PROTOCOL := false; /** * @desc Does MME/SGSN act as the IUT? * @see ETSI DTS/INT-094-1 V0.0.3 (2013-11) A.2/1.1 Loading
DiameterS6a/ttcn/DiameterS6a_Steps.ttcn3 +59 −7 Original line number Diff line number Diff line Loading @@ -51,30 +51,67 @@ } // End of function f_DiameterGx_init /** * @desc Default altstep activated during the preambule * @desc Default altstep activated during the preambule for MME IUT role */ altstep hss_default() runs on TestAdapter { altstep a_mme_default() runs on TestAdapter { [] HSS_S6a.receive( mw_hssUpdateLocationRequest( mw_S6a_uLR_dummy )) { // Received an unexpected UL-Answer message, process it as an error log("*** a_hss_default: ERROR: Received an unexpected UL-Request message, process it as an error ***"); f_selfOrClientSyncAndVerdict("error", e_error); } [] HSS_S6a.receive { // Received an unexpected message, process it as an error log("*** a_mme_default: ERROR: Received an unexpected message, process it as an error ***"); f_selfOrClientSyncAndVerdict("error", e_error); } [] tc_ac.timeout { log("*** a_mme_default: ERROR: Timeout while awaiting the reception of a message ***"); f_selfOrClientSyncAndVerdict("error", e_timeout); } } // End of altstep a_mme_default /** * @desc Default altstep activated during the preambule for HSS IUT role */ altstep a_hss_default() runs on TestAdapter { [] MME_S6a.receive( mw_mmeUpdateLocationRequest( mw_S6a_ULA_dummy )) { // Received an unexpected UL-Answer message, process it as an error log("*** a_default: ERROR: Received an unexpected UL-Answer message, process it as an error ***"); log("*** a_hss_default: ERROR: Received an unexpected UL-Answer message, process it as an error ***"); f_selfOrClientSyncAndVerdict("error", e_error); } [] MME_S6a.receive { // Received an unexpected message, process it as an error log("*** a_default: ERROR: Received an unexpected message, process it as an error ***"); log("*** a_hss_default: ERROR: Received an unexpected message, process it as an error ***"); f_selfOrClientSyncAndVerdict("error", e_error); } [] tc_ac.timeout { log("*** a_default: ERROR: Timeout while awaiting the reception of a message ***"); log("*** a_hss_default: ERROR: Timeout while awaiting the reception of a message ***"); f_selfOrClientSyncAndVerdict("error", e_timeout); } } // End of altstep hss_default } // End of altstep a_hss_default } // End of group GlobalSteps group Preambles{ group mmeRole { function f_preamble_NAS() runs on TestAdapter { // activate( nas_default( ) ); } function f_preamble_MME() runs on TestAdapter { // Initialilize the component's variables' f_DiameterS6a_init(); // Activate defaults activate( a_mme_default( ) ); } // End of function f_preamble_MME } // End of group mmeRole group hssRole { function f_preamble_HSS() runs on TestAdapter { Loading @@ -82,7 +119,7 @@ f_DiameterS6a_init(); // Activate defaults activate( hss_default( ) ); activate( a_hss_default( ) ); } // End of function f_preamble_HSS } // End of group hssRole Loading @@ -91,9 +128,24 @@ group Postambles { group mmeRole { function f_postamble_NAS() runs on TestAdapter { // Unmap NAS-Protocol port // Deactivate defaults } function f_postamble_MME() runs on TestAdapter { // Deactivate defaults deactivate; } // End of function f_preamble_MME } // End of group mmeRole group hssRole { function f_postamble_HSS() runs on TestAdapter { // Deactivate defaults deactivate; } // End of function f_preamble_HSS Loading
DiameterS6a/ttcn/DiameterS6a_Templates.ttcn +60 −12 Original line number Diff line number Diff line Loading @@ -533,11 +533,11 @@ module DiameterS6a_Templates { group S6aDummy_request_templates_receive { template (present) ULR_MSG mw_uLR_dummy := { template (present) ULR_MSG mw_S6a_uLR_dummy := { header := mw_s6adiameterHeaderReq_dummy ( ULx_E, c_applId_S6a ), session_Id := ?, uLR_Body := mw_S6a_ULR_Body_dummy } // End of template mw_uLR_dummy } // End of template mw_S6a_uLR_dummy template (present) ULR_Body_AVP mw_S6a_ULR_Body_dummy := { vendor_Specific_Application_Id := *, Loading Loading @@ -1189,7 +1189,15 @@ module DiameterS6a_Templates { } // End of group S6aBasic_request_templates_send group S9basic_request_templates_receive { group S6basic_request_templates_receive { /** * @desc Main receive template for MME_S6a port * @param p_s6a_CCA_MSG UL-Answer receive template message */ template (present) DIAMETER_S6a_MME_Initiated_Message mw_hssUpdateLocationRequest(in template (present) ULR_MSG p_s6a_ULR_MSG) := { s6a_ULR_MSG := p_s6a_ULR_MSG } // End of tempate mw_hssUpdateLocationRequest /** * @desc Main receive template for MME_S6a port Loading @@ -1199,8 +1207,7 @@ module DiameterS6a_Templates { s6a_CCA_MSG := p_s6a_CCA_MSG } // End of tempate m_mmeUpdateLocationRequest } // End of group S9basic_request_templates_receive } // End of group S6basic_request_templates_receive group S6aBasic_answer_templates_send { } Loading Loading @@ -1358,6 +1365,41 @@ module DiameterS6a_Templates { group S6aModified_request_templates_receive { template (present) ULR_MSG mdw_ULR_TCs( in template (present) Session_Id_AVP p_sessionId, in template (present) ULR_Body_AVP p_ulrBody ) modifies mw_S6a_uLR_dummy := { session_Id := p_sessionId, uLR_Body := p_ulrBody } // End of tempate mdw_ULR_TCs /** * @desc Receive templates for TC_MME_UL_01 */ group t_TC_MME_UL_01 { template (present) ULR_Body_AVP mdw_ulrBodyAvps_TC_01( in template (present) Auth_Session_State_AVP p_auth_Session_State, in template (present) Origin_Host_AVP p_originHost, in template (present) Origin_Realm_AVP p_originRealm, in template (present) Destination_Realm_AVP p_destinationRealm, in template (present) User_Name_AVP p_user_Name, in template (present) RAT_Type_AVP p_rat_Type, in template (present) ULR_Flags_AVP p_ulr_Flags, in template (present) Visited_PLMN_Id_AVP p_visited_PLMN_Id ) modifies mw_S6a_ULR_Body_dummy := { origin_Host := p_originHost, origin_Realm := m_originRealm_dummy, destination_Realm := p_destinationRealm, auth_Session_State := p_auth_Session_State, user_Name := p_user_Name, rat_Type := p_rat_Type, ulr_Flags := p_ulr_Flags, visited_PLMN_Id := p_visited_PLMN_Id } // End of tempate mdw_ulrBodyAvps_TC_01 } // End of group t_TC_MME_UL_01 } // End of group S6aModified_request_templates_receive group S6aModified_answer_templates_send { Loading Loading @@ -1410,6 +1452,9 @@ module DiameterS6a_Templates { } // End of group t_TC_HSS_UL_01 /** * @desc Receive templates for TC_HSS_UL_02 */ group t_TC_HSS_UL_02 { /** Loading Loading @@ -1454,6 +1499,9 @@ module DiameterS6a_Templates { } // End of group t_TC_HSS_UL_02 /** * @desc Receive templates for TC_HSS_UL_03 */ group t_TC_HSS_UL_03 { /** Loading @@ -1465,7 +1513,7 @@ module DiameterS6a_Templates { * @param p_ula_Flags ULA Bit mask */ template (present) ULA_Body_AVP mdw_ulaBodyAvps_TC_03( in template Experimental_Result_AVP p_experimental_Result in template (present) Experimental_Result_AVP p_experimental_Result ) modifies mw_S6a_ULA_Body_dummy := { experimental_Result := p_experimental_Result } // End of template mdw_ulrBodyAvps_TC_03 Loading