Loading ttcn3/LibS1AP/LibS1AP_Steps.ttcn +9 −0 Original line number Diff line number Diff line Loading @@ -626,6 +626,15 @@ module LibS1AP_Steps { f_send_S1AP_initiatingMessage(m_E_RABSetupRequest(p_value)) } // End of function f_send_E_RABSetupRequest /** * @desc Send S1AP Message InitialContext_SetupRequest * @param p_value Send template with IE for InitialContext_SetupRequest */ function f_send_InitialContext_SetupRequest(in template (value) RecordOf_ProtocolIE p_value ) runs on S1APComponent { f_send_S1AP_initiatingMessage(m_InitialContextSetupRequest(p_value)) } // End of function f_send_InitialContext_SetupRequest /** * @desc Send S1AP Message S1 SETUP RESPONSE * @param p_value Send template with IE for S1 SETUP RESPONSE Loading ttcn3/LibS1AP/LibS1AP_Templates.ttcn +55 −0 Original line number Diff line number Diff line Loading @@ -99,6 +99,36 @@ module LibS1AP_Templates { }// End of group ERABSetup /** * @desc Send messages for Context Management procedures */ group Context_management_group { /** * @desc Send template for InitiatingMessage message with InitialContextSetup payload * @param p_value Expected procedure code */ template (value) InitiatingMessage m_InitialContextSetupRequest( in template (value) RecordOf_ProtocolIE p_value) := { procedureCode := id_E_RABSetup, criticality := reject, value_ := {RecordOf_ProtocolIE := valueof(p_value)} } // End of template m_InitialContextSetupRequest template (value) RecordOf_ProtocolIE m_InitialContextSetupReqIEs( 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, in template (value) RecordOf_E_RABToBeSetupItemBearerSUReq p_RecordOf_E_RABToBeSetupItem_value ) := { m_MME_UE_S1AP_ID(p_MME_value), m_eNB_UE_S1AP_ID(p_eNB_value), m_UE_aggregate_maximum_bitrate_IE(p_uEAggregateMaximumBitrate), m_E_RABToBeSetupList(p_RecordOf_E_RABToBeSetupItem_value) } // End of template m_InitialContextSetupReqIEs }// End of group Context_management_group /** * @desc Send messages for Management procedures */ Loading Loading @@ -1847,6 +1877,20 @@ module LibS1AP_Templates { value_ := {Cause := valueof(p_cause)} } // End of template m_cause_IE /** * @desc Send template for UE aggregate maxmum bitrate IE * @param p_cause UEAggregateMaximumBitrate value * @see ETSI TS 136 413 V13.4.0 Clause 9.2.1.3 Cause */ template (value) ProtocolIE m_UE_aggregate_maximum_bitrate_IE( in template (value) UEAggregateMaximumBitrate p_value, in template (value) ProtocolIE.criticality p_criticality := reject ) := { id := S1AP_Constants.id_uEaggregateMaximumBitrate, criticality := p_criticality, value_ := {UEAggregateMaximumBitrate := valueof(p_value)} } // End of template m_UE_aggregate_maximum_bitrate_IE group E_RAB_IEsend { /** Loading Loading @@ -2752,6 +2796,17 @@ module LibS1AP_Templates { e_RAB_ID := p_e_RAB_ID,cause := p_cause,iE_Extensions := * } // End of template mw_E_RABItem /** * @desc */ template (value) UEAggregateMaximumBitrate m_UEAggregateMaximumBitrate (BitRate p_dl, BitRate p_ul):= { uEaggregateMaximumBitRateDL := p_dl, uEaggregateMaximumBitRateUL := p_ul, iE_Extensions := omit } group Management_group { template (value) ResetType m_resetType_all := { Loading ttcn3/S1AP_TCFunctions.ttcn +41 −0 Original line number Diff line number Diff line Loading @@ -216,6 +216,47 @@ module S1AP_TCFunctions { */ group Context_management_group { /** * @desc Testcase function for TC_S1AP_CON_MGT_01 */ function f_TC_S1AP_CON_MGT_01() runs on S1APComponent { // Local variables // Preamble f_S1AP_enb_init(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body f_send_InitialContext_SetupRequest(m_InitialContextSetupReqIEs( vc_MME_UE_ID, vc_eNB_UE_ID, m_UEAggregateMaximumBitrate(1,1), {m_E_RABToBeSetupItemBearerSUReq ( -, m_e_RABlevelQoSParameters (5) )} )); f_recv_E_RABSetupResponse(mw_E_RABSetupResIEs( vc_MME_UE_ID, vc_eNB_UE_ID, { mw_E_RABSetupItemBearerSURes } )); // 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_CON_MGT_01 } // End of group Context_management_group Loading Loading
ttcn3/LibS1AP/LibS1AP_Steps.ttcn +9 −0 Original line number Diff line number Diff line Loading @@ -626,6 +626,15 @@ module LibS1AP_Steps { f_send_S1AP_initiatingMessage(m_E_RABSetupRequest(p_value)) } // End of function f_send_E_RABSetupRequest /** * @desc Send S1AP Message InitialContext_SetupRequest * @param p_value Send template with IE for InitialContext_SetupRequest */ function f_send_InitialContext_SetupRequest(in template (value) RecordOf_ProtocolIE p_value ) runs on S1APComponent { f_send_S1AP_initiatingMessage(m_InitialContextSetupRequest(p_value)) } // End of function f_send_InitialContext_SetupRequest /** * @desc Send S1AP Message S1 SETUP RESPONSE * @param p_value Send template with IE for S1 SETUP RESPONSE Loading
ttcn3/LibS1AP/LibS1AP_Templates.ttcn +55 −0 Original line number Diff line number Diff line Loading @@ -99,6 +99,36 @@ module LibS1AP_Templates { }// End of group ERABSetup /** * @desc Send messages for Context Management procedures */ group Context_management_group { /** * @desc Send template for InitiatingMessage message with InitialContextSetup payload * @param p_value Expected procedure code */ template (value) InitiatingMessage m_InitialContextSetupRequest( in template (value) RecordOf_ProtocolIE p_value) := { procedureCode := id_E_RABSetup, criticality := reject, value_ := {RecordOf_ProtocolIE := valueof(p_value)} } // End of template m_InitialContextSetupRequest template (value) RecordOf_ProtocolIE m_InitialContextSetupReqIEs( 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, in template (value) RecordOf_E_RABToBeSetupItemBearerSUReq p_RecordOf_E_RABToBeSetupItem_value ) := { m_MME_UE_S1AP_ID(p_MME_value), m_eNB_UE_S1AP_ID(p_eNB_value), m_UE_aggregate_maximum_bitrate_IE(p_uEAggregateMaximumBitrate), m_E_RABToBeSetupList(p_RecordOf_E_RABToBeSetupItem_value) } // End of template m_InitialContextSetupReqIEs }// End of group Context_management_group /** * @desc Send messages for Management procedures */ Loading Loading @@ -1847,6 +1877,20 @@ module LibS1AP_Templates { value_ := {Cause := valueof(p_cause)} } // End of template m_cause_IE /** * @desc Send template for UE aggregate maxmum bitrate IE * @param p_cause UEAggregateMaximumBitrate value * @see ETSI TS 136 413 V13.4.0 Clause 9.2.1.3 Cause */ template (value) ProtocolIE m_UE_aggregate_maximum_bitrate_IE( in template (value) UEAggregateMaximumBitrate p_value, in template (value) ProtocolIE.criticality p_criticality := reject ) := { id := S1AP_Constants.id_uEaggregateMaximumBitrate, criticality := p_criticality, value_ := {UEAggregateMaximumBitrate := valueof(p_value)} } // End of template m_UE_aggregate_maximum_bitrate_IE group E_RAB_IEsend { /** Loading Loading @@ -2752,6 +2796,17 @@ module LibS1AP_Templates { e_RAB_ID := p_e_RAB_ID,cause := p_cause,iE_Extensions := * } // End of template mw_E_RABItem /** * @desc */ template (value) UEAggregateMaximumBitrate m_UEAggregateMaximumBitrate (BitRate p_dl, BitRate p_ul):= { uEaggregateMaximumBitRateDL := p_dl, uEaggregateMaximumBitRateUL := p_ul, iE_Extensions := omit } group Management_group { template (value) ResetType m_resetType_all := { Loading
ttcn3/S1AP_TCFunctions.ttcn +41 −0 Original line number Diff line number Diff line Loading @@ -216,6 +216,47 @@ module S1AP_TCFunctions { */ group Context_management_group { /** * @desc Testcase function for TC_S1AP_CON_MGT_01 */ function f_TC_S1AP_CON_MGT_01() runs on S1APComponent { // Local variables // Preamble f_S1AP_enb_init(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body f_send_InitialContext_SetupRequest(m_InitialContextSetupReqIEs( vc_MME_UE_ID, vc_eNB_UE_ID, m_UEAggregateMaximumBitrate(1,1), {m_E_RABToBeSetupItemBearerSUReq ( -, m_e_RABlevelQoSParameters (5) )} )); f_recv_E_RABSetupResponse(mw_E_RABSetupResIEs( vc_MME_UE_ID, vc_eNB_UE_ID, { mw_E_RABSetupItemBearerSURes } )); // 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_CON_MGT_01 } // End of group Context_management_group Loading