Loading ttcn3/LibS1AP/LibS1AP_Steps.ttcn +22 −0 Original line number Diff line number Diff line Loading @@ -628,6 +628,17 @@ module LibS1AP_Steps { f_recv_S1AP_initiatingMessage(mw_UeContextReleaseRequest(p_value)) } // End of f_recv_UE_Context_Release_Request /** * @desc Receive S1AP Message UE Context Release Request * @param p_value Receive template for UE CONTEXT RELEASE COMPLETE * @see ETSI TS 136 413 V13.4.0 Clause 9.1.4.7 UE CONTEXT RELEASE COMPLETE */ function f_recv_UE_Context_Release_Complete( template (present) RecordOf_ProtocolIE p_value := ? ) runs on S1APComponent { f_recv_S1AP_initiatingMessage(mw_UeContextReleaseComplete(p_value)) } // End of f_recv_UE_Context_Release_Complete } // End of group receivePDU /** Loading Loading @@ -857,6 +868,17 @@ module LibS1AP_Steps { f_send_S1AP_initiatingMessage(m_kill_Response(p_value)) } // End of function f_send_Kill_Response /** * @desc Send S1AP Message UE Context Release Command * @param p_value Send template for UE CONTEXT RELEASE REQUEST * @see ETSI TS 136 413 V13.4.0 Clause 9.1.4.6 UE CONTEXT RELEASE COMMAND */ function f_send_UE_Context_Release_Command( template (value) RecordOf_ProtocolIE p_value ) runs on S1APComponent { f_send_S1AP_initiatingMessage(m_UeContextReleaseCommand(p_value)) } // End of f_recv_UE_Context_Release_Request } // End of group sendPDU /** Loading ttcn3/LibS1AP/LibS1AP_Templates.ttcn +51 −0 Original line number Diff line number Diff line Loading @@ -132,6 +132,27 @@ module LibS1AP_Templates { m_securityKey_IE(p_SecurityKey) } // End of template m_InitialContextSetupReqIEs /** * @desc Send template for InitiatingMessage message with InitialContextSetup payload * @param p_value Expected procedure code */ template (value) InitiatingMessage m_UeContextReleaseCommand( in template (value) RecordOf_ProtocolIE p_value) := { procedureCode := id_UEContextRelease, criticality := reject, value_ := {RecordOf_ProtocolIE := valueof(p_value)} } // End of template m_UeContextReleaseCommand template (value) RecordOf_ProtocolIE m_UeContextReleaseCommandIEs( in template (value) MME_UE_S1AP_ID p_MME_value, in template (value) ENB_UE_S1AP_ID p_eNB_value, in template (value) Cause p_cause ) := { m_MME_UE_S1AP_ID(p_MME_value), m_eNB_UE_S1AP_ID(p_eNB_value), m_cause_IE(p_cause) } // End of template m_UeContextReleaseCommandIEs }// End of group Context_management_group /** Loading Loading @@ -554,6 +575,30 @@ module LibS1AP_Templates { mw_cause_IE(p_cause) } // End of template mw_UeContextReleaseRequestIEs /** * @desc Receive template for UeContextReleaseComplete message * @param p_procedureCode Expected procedure code. Default: ? * @param p_value Expected procedure code. Default: ? */ template (present) SuccessfulOutcome mw_UeContextReleaseComplete( template (present) RecordOf_ProtocolIE p_value := ? ) := { procedureCode := id_UEContextRelease, criticality := reject, value_ := {RecordOf_ProtocolIE := p_value} } // End of template mw_UeContextReleaseComplete template (present) RecordOf_ProtocolIE mw_UeContextReleaseCompleteIEs( 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_UeContextReleaseCompleteIEs } // End of group Context_management_group /** Loading Loading @@ -3078,6 +3123,12 @@ module LibS1AP_Templates { nas := p_nas } // End of template m_cause_nas template(value) Cause m_cause_ran( in template (value) CauseRadioNetwork p_radioNetwork ) := { radioNetwork := p_radioNetwork } // End of template m_cause_ran template(present) Cause mw_cause_ran( template (present) CauseRadioNetwork p_radioNetwork := ? ) := { Loading ttcn3/S1AP_TCFunctions.ttcn +36 −0 Original line number Diff line number Diff line Loading @@ -937,6 +937,42 @@ module S1AP_TCFunctions { } // End of function f_TC_S1AP_eNB_CMP_09 /** * @desc Testcase function for TC_S1AP_eNB_CMP_10 */ function f_TC_S1AP_eNB_CMP_10() 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_Release_Command(m_UeContextReleaseCommandIEs( vc_MME_UE_ID, vc_eNB_UE_ID, m_cause_ran(user_inactivity) )); f_recv_UE_Context_Release_Complete(mw_UeContextReleaseCompleteIEs( vc_MME_UE_ID, vc_eNB_UE_ID )); // 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_10 } // End of group Context_management_group /** Loading Loading
ttcn3/LibS1AP/LibS1AP_Steps.ttcn +22 −0 Original line number Diff line number Diff line Loading @@ -628,6 +628,17 @@ module LibS1AP_Steps { f_recv_S1AP_initiatingMessage(mw_UeContextReleaseRequest(p_value)) } // End of f_recv_UE_Context_Release_Request /** * @desc Receive S1AP Message UE Context Release Request * @param p_value Receive template for UE CONTEXT RELEASE COMPLETE * @see ETSI TS 136 413 V13.4.0 Clause 9.1.4.7 UE CONTEXT RELEASE COMPLETE */ function f_recv_UE_Context_Release_Complete( template (present) RecordOf_ProtocolIE p_value := ? ) runs on S1APComponent { f_recv_S1AP_initiatingMessage(mw_UeContextReleaseComplete(p_value)) } // End of f_recv_UE_Context_Release_Complete } // End of group receivePDU /** Loading Loading @@ -857,6 +868,17 @@ module LibS1AP_Steps { f_send_S1AP_initiatingMessage(m_kill_Response(p_value)) } // End of function f_send_Kill_Response /** * @desc Send S1AP Message UE Context Release Command * @param p_value Send template for UE CONTEXT RELEASE REQUEST * @see ETSI TS 136 413 V13.4.0 Clause 9.1.4.6 UE CONTEXT RELEASE COMMAND */ function f_send_UE_Context_Release_Command( template (value) RecordOf_ProtocolIE p_value ) runs on S1APComponent { f_send_S1AP_initiatingMessage(m_UeContextReleaseCommand(p_value)) } // End of f_recv_UE_Context_Release_Request } // End of group sendPDU /** Loading
ttcn3/LibS1AP/LibS1AP_Templates.ttcn +51 −0 Original line number Diff line number Diff line Loading @@ -132,6 +132,27 @@ module LibS1AP_Templates { m_securityKey_IE(p_SecurityKey) } // End of template m_InitialContextSetupReqIEs /** * @desc Send template for InitiatingMessage message with InitialContextSetup payload * @param p_value Expected procedure code */ template (value) InitiatingMessage m_UeContextReleaseCommand( in template (value) RecordOf_ProtocolIE p_value) := { procedureCode := id_UEContextRelease, criticality := reject, value_ := {RecordOf_ProtocolIE := valueof(p_value)} } // End of template m_UeContextReleaseCommand template (value) RecordOf_ProtocolIE m_UeContextReleaseCommandIEs( in template (value) MME_UE_S1AP_ID p_MME_value, in template (value) ENB_UE_S1AP_ID p_eNB_value, in template (value) Cause p_cause ) := { m_MME_UE_S1AP_ID(p_MME_value), m_eNB_UE_S1AP_ID(p_eNB_value), m_cause_IE(p_cause) } // End of template m_UeContextReleaseCommandIEs }// End of group Context_management_group /** Loading Loading @@ -554,6 +575,30 @@ module LibS1AP_Templates { mw_cause_IE(p_cause) } // End of template mw_UeContextReleaseRequestIEs /** * @desc Receive template for UeContextReleaseComplete message * @param p_procedureCode Expected procedure code. Default: ? * @param p_value Expected procedure code. Default: ? */ template (present) SuccessfulOutcome mw_UeContextReleaseComplete( template (present) RecordOf_ProtocolIE p_value := ? ) := { procedureCode := id_UEContextRelease, criticality := reject, value_ := {RecordOf_ProtocolIE := p_value} } // End of template mw_UeContextReleaseComplete template (present) RecordOf_ProtocolIE mw_UeContextReleaseCompleteIEs( 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_UeContextReleaseCompleteIEs } // End of group Context_management_group /** Loading Loading @@ -3078,6 +3123,12 @@ module LibS1AP_Templates { nas := p_nas } // End of template m_cause_nas template(value) Cause m_cause_ran( in template (value) CauseRadioNetwork p_radioNetwork ) := { radioNetwork := p_radioNetwork } // End of template m_cause_ran template(present) Cause mw_cause_ran( template (present) CauseRadioNetwork p_radioNetwork := ? ) := { Loading
ttcn3/S1AP_TCFunctions.ttcn +36 −0 Original line number Diff line number Diff line Loading @@ -937,6 +937,42 @@ module S1AP_TCFunctions { } // End of function f_TC_S1AP_eNB_CMP_09 /** * @desc Testcase function for TC_S1AP_eNB_CMP_10 */ function f_TC_S1AP_eNB_CMP_10() 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_Release_Command(m_UeContextReleaseCommandIEs( vc_MME_UE_ID, vc_eNB_UE_ID, m_cause_ran(user_inactivity) )); f_recv_UE_Context_Release_Complete(mw_UeContextReleaseCompleteIEs( vc_MME_UE_ID, vc_eNB_UE_ID )); // 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_10 } // End of group Context_management_group /** Loading