Loading ttcn3/LibS1AP/LibS1AP_Steps.ttcn +11 −0 Original line number Diff line number Diff line Loading @@ -660,6 +660,17 @@ module LibS1AP_Steps { f_recv_S1AP_initiatingMessage(mw_UeContextModificationResponse(p_value)) } // End of f_recv_UE_Context_Modification_Response /** * @desc Receive S1AP Message UE Context Modification Failure * @param p_value Receive template for UE CONTEXT MODIFICATION FAILURE * @see ETSI TS 136 413 V13.4.0 Clause 9.1.4.10 UE CONTEXT MODIFICATION FAILURE */ function f_recv_UE_Context_Modification_Failure( template (present) RecordOf_ProtocolIE p_value := ? ) runs on S1APComponent { f_recv_S1AP_initiatingMessage(mw_UeContextModificationFailure(p_value)) } // End of f_recv_UE_Context_Modification_Failure } // End of group receivePDU /** Loading ttcn3/LibS1AP/LibS1AP_Templates.ttcn +63 −1 Original line number Diff line number Diff line Loading @@ -196,7 +196,7 @@ module LibS1AP_Templates { value_ := {RecordOf_ProtocolIE := valueof(p_value)} } // End of template m_UeContextModificationRequest template (value) RecordOf_ProtocolIE m_ContextModificationReqIEs( template (value) RecordOf_ProtocolIE m_ContextModificationReqIEsUEAgg( in template (value) MME_UE_S1AP_ID p_MME_value, in template (value) ENB_UE_S1AP_ID p_eNB_value, in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate Loading @@ -206,6 +206,30 @@ module LibS1AP_Templates { m_UE_aggregate_maximum_bitrate_IE(p_uEAggregateMaximumBitrate) } // End of template m_ContextModificationReqIEs template (value) RecordOf_ProtocolIE m_ContextModificationReqIEsSecKey( in template (value) MME_UE_S1AP_ID p_MME_value, in template (value) ENB_UE_S1AP_ID p_eNB_value, in template (value) CSFallbackIndicator p_CSFallbackIndicator, in template (value) SecurityKey p_SecurityKey ) := { m_MME_UE_S1AP_ID(p_MME_value), m_eNB_UE_S1AP_ID(p_eNB_value), m_CS_Fallback_indicator_IE(p_CSFallbackIndicator), m_securityKey_IE(p_SecurityKey) } // End of template m_ContextModificationReqIEsSecKey template (value) RecordOf_ProtocolIE m_ContextModificationReqIEsSecCap( in template (value) MME_UE_S1AP_ID p_MME_value, in template (value) ENB_UE_S1AP_ID p_eNB_value, in template (value) CSFallbackIndicator p_CSFallbackIndicator, in template (value) UESecurityCapabilities p_UeSecurityCapabilities ) := { m_MME_UE_S1AP_ID(p_MME_value), m_eNB_UE_S1AP_ID(p_eNB_value), m_CS_Fallback_indicator_IE(p_CSFallbackIndicator), m_UE_securityCapabilities_IE(p_UeSecurityCapabilities) } // End of template m_ContextModificationReqIEsSecCap }// End of group Context_management_group /** Loading Loading @@ -714,6 +738,29 @@ module LibS1AP_Templates { mw_eNB_UE_S1AP_ID(p_eNB_value, ignore) } // End of template mw_UeContextReleaseCompleteIEs /** * @desc Receive template for mw_UeContextModificationFailure message * @param p_procedureCode Expected procedure code. Default: ? * @param p_value Expected procedure code. Default: ? */ template (present) SuccessfulOutcome mw_UeContextModificationFailure( template (present) RecordOf_ProtocolIE p_value := ? ) := { procedureCode := id_UEContextModification, criticality := reject, value_ := {RecordOf_ProtocolIE := p_value} } // End of template mw_UeContextModificationFailure template (present) RecordOf_ProtocolIE mw_UeContextModificationFailureIEs( template (present) MME_UE_S1AP_ID p_MME_value := ?, template (present) ENB_UE_S1AP_ID p_eNB_value := ?, template (present) Cause p_cause := ? ) := { mw_MME_UE_S1AP_ID(p_MME_value, ignore), mw_eNB_UE_S1AP_ID(p_eNB_value, ignore), mw_cause_IE(p_cause) } // End of template mw_UeContextModificationFailureIEs } // End of group Context_management_group /** Loading Loading @@ -2357,6 +2404,21 @@ module LibS1AP_Templates { value_ := {Correlation_ID := valueof(p_value)} } // End of template m_SIPTO_correlationID_IE /** * @desc Send template for CS Fallback indicator IE * @param p_value CSFallbackIndicator value * @see ETSI TS 136 413 V13.4.0 Clause 9.2.3.21 CS Fallback indicator */ template (value) ProtocolIE m_CS_Fallback_indicator_IE( in template (value) CSFallbackIndicator p_value, in template (value) ProtocolIE.criticality p_criticality := ignore ) := { id := S1AP_Constants.id_CSFallbackIndicator, criticality := p_criticality, value_ := {CSFallbackIndicator := valueof(p_value)} } // End of template m_CS_Fallback_indicator_IE group E_RAB_IEsend { /** Loading ttcn3/S1AP_TCFunctions.ttcn +75 −1 Original line number Diff line number Diff line Loading @@ -1279,7 +1279,7 @@ module S1AP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body f_send_UE_Context_Modification_Request(m_ContextModificationReqIEs( f_send_UE_Context_Modification_Request(m_ContextModificationReqIEsUEAgg( vc_MME_UE_ID, vc_eNB_UE_ID, m_UEAggregateMaximumBitrate(1,1) Loading @@ -1299,6 +1299,80 @@ module S1AP_TCFunctions { } // End of function f_TC_S1AP_eNB_CMP_13 /** * @desc Testcase function for TC_S1AP_eNB_CMP_14 */ function f_TC_S1AP_eNB_CMP_14() runs on S1APComponent { // Local variables // Preamble f_S1AP_enb_init(); f_rABSetupRequest(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body f_send_UE_Context_Modification_Request(m_ContextModificationReqIEsSecKey( vc_MME_UE_ID, vc_eNB_UE_ID, cs_fallback_required, m_securityKey )); f_recv_UE_Context_Modification_Failure(mw_UeContextModificationFailureIEs( vc_MME_UE_ID, vc_eNB_UE_ID, ? // cause )); // Postamble f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_eNB_CMP_14 /** * @desc Testcase function for TC_S1AP_eNB_CMP_15 */ function f_TC_S1AP_eNB_CMP_15() runs on S1APComponent { // Local variables // Preamble f_S1AP_enb_init(); f_rABSetupRequest(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body f_send_UE_Context_Modification_Request(m_ContextModificationReqIEsSecCap( vc_MME_UE_ID, vc_eNB_UE_ID, cs_fallback_required, m_UESecurityCapabilities('0101010101010101'B,'0101010101010101'B) )); f_recv_UE_Context_Modification_Failure(mw_UeContextModificationFailureIEs( vc_MME_UE_ID, vc_eNB_UE_ID, ? // cause )); // Postamble f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_eNB_CMP_15 } // End of group Context_management_group Loading Loading
ttcn3/LibS1AP/LibS1AP_Steps.ttcn +11 −0 Original line number Diff line number Diff line Loading @@ -660,6 +660,17 @@ module LibS1AP_Steps { f_recv_S1AP_initiatingMessage(mw_UeContextModificationResponse(p_value)) } // End of f_recv_UE_Context_Modification_Response /** * @desc Receive S1AP Message UE Context Modification Failure * @param p_value Receive template for UE CONTEXT MODIFICATION FAILURE * @see ETSI TS 136 413 V13.4.0 Clause 9.1.4.10 UE CONTEXT MODIFICATION FAILURE */ function f_recv_UE_Context_Modification_Failure( template (present) RecordOf_ProtocolIE p_value := ? ) runs on S1APComponent { f_recv_S1AP_initiatingMessage(mw_UeContextModificationFailure(p_value)) } // End of f_recv_UE_Context_Modification_Failure } // End of group receivePDU /** Loading
ttcn3/LibS1AP/LibS1AP_Templates.ttcn +63 −1 Original line number Diff line number Diff line Loading @@ -196,7 +196,7 @@ module LibS1AP_Templates { value_ := {RecordOf_ProtocolIE := valueof(p_value)} } // End of template m_UeContextModificationRequest template (value) RecordOf_ProtocolIE m_ContextModificationReqIEs( template (value) RecordOf_ProtocolIE m_ContextModificationReqIEsUEAgg( in template (value) MME_UE_S1AP_ID p_MME_value, in template (value) ENB_UE_S1AP_ID p_eNB_value, in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate Loading @@ -206,6 +206,30 @@ module LibS1AP_Templates { m_UE_aggregate_maximum_bitrate_IE(p_uEAggregateMaximumBitrate) } // End of template m_ContextModificationReqIEs template (value) RecordOf_ProtocolIE m_ContextModificationReqIEsSecKey( in template (value) MME_UE_S1AP_ID p_MME_value, in template (value) ENB_UE_S1AP_ID p_eNB_value, in template (value) CSFallbackIndicator p_CSFallbackIndicator, in template (value) SecurityKey p_SecurityKey ) := { m_MME_UE_S1AP_ID(p_MME_value), m_eNB_UE_S1AP_ID(p_eNB_value), m_CS_Fallback_indicator_IE(p_CSFallbackIndicator), m_securityKey_IE(p_SecurityKey) } // End of template m_ContextModificationReqIEsSecKey template (value) RecordOf_ProtocolIE m_ContextModificationReqIEsSecCap( in template (value) MME_UE_S1AP_ID p_MME_value, in template (value) ENB_UE_S1AP_ID p_eNB_value, in template (value) CSFallbackIndicator p_CSFallbackIndicator, in template (value) UESecurityCapabilities p_UeSecurityCapabilities ) := { m_MME_UE_S1AP_ID(p_MME_value), m_eNB_UE_S1AP_ID(p_eNB_value), m_CS_Fallback_indicator_IE(p_CSFallbackIndicator), m_UE_securityCapabilities_IE(p_UeSecurityCapabilities) } // End of template m_ContextModificationReqIEsSecCap }// End of group Context_management_group /** Loading Loading @@ -714,6 +738,29 @@ module LibS1AP_Templates { mw_eNB_UE_S1AP_ID(p_eNB_value, ignore) } // End of template mw_UeContextReleaseCompleteIEs /** * @desc Receive template for mw_UeContextModificationFailure message * @param p_procedureCode Expected procedure code. Default: ? * @param p_value Expected procedure code. Default: ? */ template (present) SuccessfulOutcome mw_UeContextModificationFailure( template (present) RecordOf_ProtocolIE p_value := ? ) := { procedureCode := id_UEContextModification, criticality := reject, value_ := {RecordOf_ProtocolIE := p_value} } // End of template mw_UeContextModificationFailure template (present) RecordOf_ProtocolIE mw_UeContextModificationFailureIEs( template (present) MME_UE_S1AP_ID p_MME_value := ?, template (present) ENB_UE_S1AP_ID p_eNB_value := ?, template (present) Cause p_cause := ? ) := { mw_MME_UE_S1AP_ID(p_MME_value, ignore), mw_eNB_UE_S1AP_ID(p_eNB_value, ignore), mw_cause_IE(p_cause) } // End of template mw_UeContextModificationFailureIEs } // End of group Context_management_group /** Loading Loading @@ -2357,6 +2404,21 @@ module LibS1AP_Templates { value_ := {Correlation_ID := valueof(p_value)} } // End of template m_SIPTO_correlationID_IE /** * @desc Send template for CS Fallback indicator IE * @param p_value CSFallbackIndicator value * @see ETSI TS 136 413 V13.4.0 Clause 9.2.3.21 CS Fallback indicator */ template (value) ProtocolIE m_CS_Fallback_indicator_IE( in template (value) CSFallbackIndicator p_value, in template (value) ProtocolIE.criticality p_criticality := ignore ) := { id := S1AP_Constants.id_CSFallbackIndicator, criticality := p_criticality, value_ := {CSFallbackIndicator := valueof(p_value)} } // End of template m_CS_Fallback_indicator_IE group E_RAB_IEsend { /** Loading
ttcn3/S1AP_TCFunctions.ttcn +75 −1 Original line number Diff line number Diff line Loading @@ -1279,7 +1279,7 @@ module S1AP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body f_send_UE_Context_Modification_Request(m_ContextModificationReqIEs( f_send_UE_Context_Modification_Request(m_ContextModificationReqIEsUEAgg( vc_MME_UE_ID, vc_eNB_UE_ID, m_UEAggregateMaximumBitrate(1,1) Loading @@ -1299,6 +1299,80 @@ module S1AP_TCFunctions { } // End of function f_TC_S1AP_eNB_CMP_13 /** * @desc Testcase function for TC_S1AP_eNB_CMP_14 */ function f_TC_S1AP_eNB_CMP_14() runs on S1APComponent { // Local variables // Preamble f_S1AP_enb_init(); f_rABSetupRequest(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body f_send_UE_Context_Modification_Request(m_ContextModificationReqIEsSecKey( vc_MME_UE_ID, vc_eNB_UE_ID, cs_fallback_required, m_securityKey )); f_recv_UE_Context_Modification_Failure(mw_UeContextModificationFailureIEs( vc_MME_UE_ID, vc_eNB_UE_ID, ? // cause )); // Postamble f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_eNB_CMP_14 /** * @desc Testcase function for TC_S1AP_eNB_CMP_15 */ function f_TC_S1AP_eNB_CMP_15() runs on S1APComponent { // Local variables // Preamble f_S1AP_enb_init(); f_rABSetupRequest(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body f_send_UE_Context_Modification_Request(m_ContextModificationReqIEsSecCap( vc_MME_UE_ID, vc_eNB_UE_ID, cs_fallback_required, m_UESecurityCapabilities('0101010101010101'B,'0101010101010101'B) )); f_recv_UE_Context_Modification_Failure(mw_UeContextModificationFailureIEs( vc_MME_UE_ID, vc_eNB_UE_ID, ? // cause )); // Postamble f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_eNB_CMP_15 } // End of group Context_management_group Loading