Loading ttcn3/LibS1AP/LibS1AP_Steps.ttcn +37 −0 Original line number Diff line number Diff line Loading @@ -213,6 +213,15 @@ module LibS1AP_Steps { function f_recv_HandoverCommand(in template (present) RecordOf_ProtocolIE p_value :=? ) runs on S1APComponent { f_recv_S1AP_successfulOutcome(mw_HandoverCommand(p_value)) } // End of function f_recv_HandoverCommand /** * @desc Receive S1AP Message Handover Preparation Failure * @param p_value Receive template for Handover Preparation Failure IEs */ function f_recv_HandoverPreparationFailure(in template (present) RecordOf_ProtocolIE p_value :=? ) runs on S1APComponent { f_recv_S1AP_unsuccessfulOutcome(mw_HandoverPreparationFailure(p_value)) } // End of function f_recv_HandoverRequired /** Loading Loading @@ -269,6 +278,24 @@ module LibS1AP_Steps { f_recv_S1AP_initiatingMessage(mw_PathSwitchRequest(p_value)) } // End of function f_recv_PathSwitchRequest /** * @desc Receive S1AP Message Path Switch Request Acknowledge * @param p_value Receive template for Path Switch Request Acknowledge IEs */ function f_recv_PathSwitchRequestAck(in template (present) RecordOf_ProtocolIE p_value :=? ) runs on S1APComponent { f_recv_S1AP_successfulOutcome(mw_PathSwitchRequestAck(p_value)) } // End of function f_recv_PathSwitchRequestAck /** * @desc Receive S1AP Message Path Switch Request Failure * @param p_value Receive template for Path Switch Request Failure IEs */ function f_recv_PathSwitchRequestFailure(in template (present) RecordOf_ProtocolIE p_value :=? ) runs on S1APComponent { f_recv_S1AP_unsuccessfulOutcome(mw_PathSwitchRequestFailure(p_value)) } /** * @desc Receive S1AP Message eNB Status Transfer * @param p_value Receive template for eNB Status Transfer IEs Loading Loading @@ -1107,6 +1134,16 @@ module LibS1AP_Steps { f_send_S1AP_successfulOutcome(m_HandoverCommand(p_value)) } // End of function f_send_HandoverCommand /** * @desc Send S1AP Message Path Switch Request * @param p_value Send template with IE for Path Switch Request */ function f_send_PathSwitchRequest( in template (value) RecordOf_ProtocolIE p_value ) runs on S1APComponent { f_send_S1AP_initiatingMessage(m_PathSwitchRequest(p_value)) } // End of function f_send_PathSwitchRequestAcknowledge /** * @desc Send S1AP Message Path Switch Request Acknowledge * @param p_value Send template with IE for Path Switch Request Acknowledge Loading ttcn3/LibS1AP/LibS1AP_Templates.ttcn +344 −4 File changed.Preview size limit exceeded, changes collapsed. Show changes ttcn3/S1AP_TCFunctions.ttcn +437 −1 Original line number Diff line number Diff line Loading @@ -5193,6 +5193,442 @@ module S1AP_TCFunctions { } // End of function f_TC_S1AP_MME_HAS_04_ENB2 /** * @desc Testcase function for TC_S1AP_MME_HAS_05 */ function f_TC_S1AP_MME_HAS_05() runs on S1APComponent { // Local variables const SourceBSS_ToTargetBSS_TransparentContainer c_sourceBSS_ToTargetBSS_TransparentContainer := '12121212'O; const TargetBSS_ToSourceBSS_TransparentContainer c_targetBSS_ToSourceBSS_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_HandoverRequired( m_HandoverRequiredIEs_SRVCCHOIndication( vc_MME_UE_ID, vc_eNB_UE_ID, ltetogeran, m_cause_ran(unspecified), m_Target_CGI('000001'O, //plmn id '0001'O,//lac '0001'O //ci ), c_sourceBSS_ToTargetBSS_TransparentContainer, cSonly //SRVCCHOIndication )); f_recv_HandoverCommand( mw_HandoverCommandIEs_NASSecurity( vc_MME_UE_ID, vc_eNB_UE_ID, ltetogeran,//handover_Type c_targetBSS_ToSourceBSS_TransparentContainer,//TargetToSourceTransparentContainer - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_05 /** * @desc Testcase function for TC_S1AP_MME_HAS_06 */ function f_TC_S1AP_MME_HAS_06() runs on S1APComponent { // Local variables const SourceRNC_ToTargetRNC_TransparentContainer c_sourceRNC_ToTargetRNC_TransparentContainer := '12121212'O; const TargetRNC_ToSourceRNC_TransparentContainer c_targetRNC_ToSourceRNC_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_HandoverRequired( m_HandoverRequiredIEs_SRVCCHOIndication( vc_MME_UE_ID, vc_eNB_UE_ID, ltetoutran, m_cause_ran(unspecified), m_TargetRNC_ID(m_LAI('000001'O, //plmn id '0001'O), //lac m_rNC_Id), c_sourceRNC_ToTargetRNC_TransparentContainer, cSonly //SRVCCHOIndication )); f_recv_HandoverCommand( mw_HandoverCommandIEs_NASSecurity( vc_MME_UE_ID, vc_eNB_UE_ID, ltetoutran,//handover_Type c_targetRNC_ToSourceRNC_TransparentContainer,//TargetToSourceTransparentContainer - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_06 /** * @desc Testcase function for TC_S1AP_MME_HAS_07 */ function f_TC_S1AP_MME_HAS_07() runs on S1APComponent { // Local variables const SourceBSS_ToTargetBSS_TransparentContainer c_sourceBSS_ToTargetBSS_TransparentContainer := '12121212'O; const SourceBSS_ToTargetBSS_TransparentContainer c_sourceBSS_ToTargetBSS_TransparentContainer_2nd := '12121212'O; const TargetBSS_ToSourceBSS_TransparentContainer c_targetBSS_ToSourceBSS_TransparentContainer := '12121212'O; const TargetBSS_ToSourceBSS_TransparentContainer c_targetBSS_ToSourceBSS_TransparentContainer_2nd := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_HandoverRequired( m_HandoverRequiredIEs_SRVCCHOInd_S2TTransCont2nd_MSClassmark23( vc_MME_UE_ID, vc_eNB_UE_ID, ltetogeran, m_cause_ran(unspecified), m_Target_CGI('000001'O, //plmn id '0001'O,//lac '0001'O //ci ), c_sourceBSS_ToTargetBSS_TransparentContainer, c_sourceBSS_ToTargetBSS_TransparentContainer_2nd, pSandCS, //SRVCCHOIndication '0000'O, //MSclassmark2 need to be coded due to 9.2.1.64 and ts 48.008 '0000'O //MSclassmark3 need to be coded due to 9.2.1.65 and ts 48.008 )); f_recv_HandoverCommand( mw_HandoverCommandIEs_T2STransCont2nd_NASSecurity( vc_MME_UE_ID, vc_eNB_UE_ID, ltetogeran,//handover_Type c_targetBSS_ToSourceBSS_TransparentContainer,//TargetToSourceTransparentContainer c_targetBSS_ToSourceBSS_TransparentContainer_2nd,//TargetToSourceTransparentContainer - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_07 /** * @desc Testcase function for TC_S1AP_MME_HAS_08 */ function f_TC_S1AP_MME_HAS_08() runs on S1APComponent { // Local variables const SourceRNC_ToTargetRNC_TransparentContainer c_sourceRNC_ToTargetRNC_TransparentContainer := '12121212'O; const TargetRNC_ToSourceRNC_TransparentContainer c_targetRNC_ToSourceRNC_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_HandoverRequired( m_HandoverRequiredIEs_SRVCCHOIndication( vc_MME_UE_ID, vc_eNB_UE_ID, ltetoutran, m_cause_ran(unspecified), m_TargetRNC_ID(m_LAI('000001'O, //plmn id '0001'O), //lac m_rNC_Id), c_sourceRNC_ToTargetRNC_TransparentContainer, pSandCS )); f_recv_HandoverCommand( mw_HandoverCommandIEs_NASSecurity( vc_MME_UE_ID, vc_eNB_UE_ID, ltetoutran,//handover_Type c_targetRNC_ToSourceRNC_TransparentContainer,//TargetToSourceTransparentContainer - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_08 /** * @desc Testcase function for TC_S1AP_MME_HAS_09 */ function f_TC_S1AP_MME_HAS_09() runs on S1APComponent { // Local variables const Source_ToTarget_TransparentContainer c_source_ToTarget_TransparentContainer := '12121212'O; const Target_ToSource_TransparentContainer c_target_ToSource_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_HandoverRequired( m_HandoverRequiredIEs_CSGID( vc_MME_UE_ID, vc_eNB_UE_ID, intralte, m_cause_ran(unspecified), m_TargeteNB_ID(m_Global_ENB_ID('000001'O, m_ENB_ID_macro), m_TAI('000001'O, '0001'O)), c_source_ToTarget_TransparentContainer, '000000000000000000000000001'B )); f_recv_HandoverPreparationFailure( mw_HandoverPreparationFailureIEs( vc_MME_UE_ID, vc_eNB_UE_ID, -//cause )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_09 /** * @desc Testcase function for TC_S1AP_MME_HAS_10 */ function f_TC_S1AP_MME_HAS_10() runs on S1APComponent { // Local variables // Preamble f_S1AP_mme_init(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body action("trigger an Handover request"); f_recv_HandoverRequest( mw_HandoverRequestIEs( -, -, -, -, {?},//E_RabsToBeSetupItem -, -, - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //send HandoverRequestAck // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_10 /** * @desc Testcase function for TC_S1AP_MME_HAS_11 */ function f_TC_S1AP_MME_HAS_11() runs on S1APComponent { // Local variables const Source_ToTarget_TransparentContainer c_source_ToTarget_TransparentContainer := '12121212'O; const Target_ToSource_TransparentContainer c_target_ToSource_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_PathSwitchRequest( m_PathSwitchRequestIEs( vc_eNB_UE_ID, {m_E_RABToBeSwitchedDLItem(1,-,-,-)}, vc_MME_UE_ID, m_eUTRAN_CGI('000001'O, //plmn id '0000000000000000000000000001'B ),//ci m_TAI('000001'O,'0001'O), m_UESecurityCapabilities('0101010101010101'B,'0101010101010101'B) )); f_recv_PathSwitchRequestAck( mw_PathSwitchRequestAckIEs( vc_MME_UE_ID, vc_eNB_UE_ID, -//security context )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_11 /** * @desc Testcase function for TC_S1AP_MME_HAS_12 */ function f_TC_S1AP_MME_HAS_12() runs on S1APComponent { // Local variables const Source_ToTarget_TransparentContainer c_source_ToTarget_TransparentContainer := '12121212'O; const Target_ToSource_TransparentContainer c_target_ToSource_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_PathSwitchRequest( m_PathSwitchRequestIEs( vc_eNB_UE_ID, {m_E_RABToBeSwitchedDLItem(1,-,-,-)}, vc_MME_UE_ID, m_eUTRAN_CGI('000001'O, //plmn id '0000000000000000000000000001'B ),//ci m_TAI('000001'O,'0001'O), m_UESecurityCapabilities('0101010101010101'B,'0101010101010101'B) )); f_recv_PathSwitchRequestFailure( mw_PathSwitchRequestFailureIEs( vc_MME_UE_ID, vc_eNB_UE_ID, -//cause )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_12 /** * @desc Testcase function for TC_S1AP_MME_HAS_13 */ function f_TC_S1AP_MME_HAS_13() runs on S1APComponent { // Local variables const Source_ToTarget_TransparentContainer c_source_ToTarget_TransparentContainer := '12121212'O; const Target_ToSource_TransparentContainer c_target_ToSource_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_PathSwitchRequest( m_PathSwitchRequestIEs( vc_eNB_UE_ID, { m_E_RABToBeSwitchedDLItem(1,-,-,-), m_E_RABToBeSwitchedDLItem(1,-,-,-) }, vc_MME_UE_ID, m_eUTRAN_CGI('000001'O, //plmn id '0000000000000000000000000001'B ),//ci m_TAI('000001'O,'0001'O), m_UESecurityCapabilities('0101010101010101'B,'0101010101010101'B) )); f_recv_PathSwitchRequestFailure( mw_PathSwitchRequestFailureIEs( vc_MME_UE_ID, vc_eNB_UE_ID, -//cause )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_13 } // End of group Handover_signalling_group /** Loading Loading
ttcn3/LibS1AP/LibS1AP_Steps.ttcn +37 −0 Original line number Diff line number Diff line Loading @@ -213,6 +213,15 @@ module LibS1AP_Steps { function f_recv_HandoverCommand(in template (present) RecordOf_ProtocolIE p_value :=? ) runs on S1APComponent { f_recv_S1AP_successfulOutcome(mw_HandoverCommand(p_value)) } // End of function f_recv_HandoverCommand /** * @desc Receive S1AP Message Handover Preparation Failure * @param p_value Receive template for Handover Preparation Failure IEs */ function f_recv_HandoverPreparationFailure(in template (present) RecordOf_ProtocolIE p_value :=? ) runs on S1APComponent { f_recv_S1AP_unsuccessfulOutcome(mw_HandoverPreparationFailure(p_value)) } // End of function f_recv_HandoverRequired /** Loading Loading @@ -269,6 +278,24 @@ module LibS1AP_Steps { f_recv_S1AP_initiatingMessage(mw_PathSwitchRequest(p_value)) } // End of function f_recv_PathSwitchRequest /** * @desc Receive S1AP Message Path Switch Request Acknowledge * @param p_value Receive template for Path Switch Request Acknowledge IEs */ function f_recv_PathSwitchRequestAck(in template (present) RecordOf_ProtocolIE p_value :=? ) runs on S1APComponent { f_recv_S1AP_successfulOutcome(mw_PathSwitchRequestAck(p_value)) } // End of function f_recv_PathSwitchRequestAck /** * @desc Receive S1AP Message Path Switch Request Failure * @param p_value Receive template for Path Switch Request Failure IEs */ function f_recv_PathSwitchRequestFailure(in template (present) RecordOf_ProtocolIE p_value :=? ) runs on S1APComponent { f_recv_S1AP_unsuccessfulOutcome(mw_PathSwitchRequestFailure(p_value)) } /** * @desc Receive S1AP Message eNB Status Transfer * @param p_value Receive template for eNB Status Transfer IEs Loading Loading @@ -1107,6 +1134,16 @@ module LibS1AP_Steps { f_send_S1AP_successfulOutcome(m_HandoverCommand(p_value)) } // End of function f_send_HandoverCommand /** * @desc Send S1AP Message Path Switch Request * @param p_value Send template with IE for Path Switch Request */ function f_send_PathSwitchRequest( in template (value) RecordOf_ProtocolIE p_value ) runs on S1APComponent { f_send_S1AP_initiatingMessage(m_PathSwitchRequest(p_value)) } // End of function f_send_PathSwitchRequestAcknowledge /** * @desc Send S1AP Message Path Switch Request Acknowledge * @param p_value Send template with IE for Path Switch Request Acknowledge Loading
ttcn3/LibS1AP/LibS1AP_Templates.ttcn +344 −4 File changed.Preview size limit exceeded, changes collapsed. Show changes
ttcn3/S1AP_TCFunctions.ttcn +437 −1 Original line number Diff line number Diff line Loading @@ -5193,6 +5193,442 @@ module S1AP_TCFunctions { } // End of function f_TC_S1AP_MME_HAS_04_ENB2 /** * @desc Testcase function for TC_S1AP_MME_HAS_05 */ function f_TC_S1AP_MME_HAS_05() runs on S1APComponent { // Local variables const SourceBSS_ToTargetBSS_TransparentContainer c_sourceBSS_ToTargetBSS_TransparentContainer := '12121212'O; const TargetBSS_ToSourceBSS_TransparentContainer c_targetBSS_ToSourceBSS_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_HandoverRequired( m_HandoverRequiredIEs_SRVCCHOIndication( vc_MME_UE_ID, vc_eNB_UE_ID, ltetogeran, m_cause_ran(unspecified), m_Target_CGI('000001'O, //plmn id '0001'O,//lac '0001'O //ci ), c_sourceBSS_ToTargetBSS_TransparentContainer, cSonly //SRVCCHOIndication )); f_recv_HandoverCommand( mw_HandoverCommandIEs_NASSecurity( vc_MME_UE_ID, vc_eNB_UE_ID, ltetogeran,//handover_Type c_targetBSS_ToSourceBSS_TransparentContainer,//TargetToSourceTransparentContainer - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_05 /** * @desc Testcase function for TC_S1AP_MME_HAS_06 */ function f_TC_S1AP_MME_HAS_06() runs on S1APComponent { // Local variables const SourceRNC_ToTargetRNC_TransparentContainer c_sourceRNC_ToTargetRNC_TransparentContainer := '12121212'O; const TargetRNC_ToSourceRNC_TransparentContainer c_targetRNC_ToSourceRNC_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_HandoverRequired( m_HandoverRequiredIEs_SRVCCHOIndication( vc_MME_UE_ID, vc_eNB_UE_ID, ltetoutran, m_cause_ran(unspecified), m_TargetRNC_ID(m_LAI('000001'O, //plmn id '0001'O), //lac m_rNC_Id), c_sourceRNC_ToTargetRNC_TransparentContainer, cSonly //SRVCCHOIndication )); f_recv_HandoverCommand( mw_HandoverCommandIEs_NASSecurity( vc_MME_UE_ID, vc_eNB_UE_ID, ltetoutran,//handover_Type c_targetRNC_ToSourceRNC_TransparentContainer,//TargetToSourceTransparentContainer - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_06 /** * @desc Testcase function for TC_S1AP_MME_HAS_07 */ function f_TC_S1AP_MME_HAS_07() runs on S1APComponent { // Local variables const SourceBSS_ToTargetBSS_TransparentContainer c_sourceBSS_ToTargetBSS_TransparentContainer := '12121212'O; const SourceBSS_ToTargetBSS_TransparentContainer c_sourceBSS_ToTargetBSS_TransparentContainer_2nd := '12121212'O; const TargetBSS_ToSourceBSS_TransparentContainer c_targetBSS_ToSourceBSS_TransparentContainer := '12121212'O; const TargetBSS_ToSourceBSS_TransparentContainer c_targetBSS_ToSourceBSS_TransparentContainer_2nd := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_HandoverRequired( m_HandoverRequiredIEs_SRVCCHOInd_S2TTransCont2nd_MSClassmark23( vc_MME_UE_ID, vc_eNB_UE_ID, ltetogeran, m_cause_ran(unspecified), m_Target_CGI('000001'O, //plmn id '0001'O,//lac '0001'O //ci ), c_sourceBSS_ToTargetBSS_TransparentContainer, c_sourceBSS_ToTargetBSS_TransparentContainer_2nd, pSandCS, //SRVCCHOIndication '0000'O, //MSclassmark2 need to be coded due to 9.2.1.64 and ts 48.008 '0000'O //MSclassmark3 need to be coded due to 9.2.1.65 and ts 48.008 )); f_recv_HandoverCommand( mw_HandoverCommandIEs_T2STransCont2nd_NASSecurity( vc_MME_UE_ID, vc_eNB_UE_ID, ltetogeran,//handover_Type c_targetBSS_ToSourceBSS_TransparentContainer,//TargetToSourceTransparentContainer c_targetBSS_ToSourceBSS_TransparentContainer_2nd,//TargetToSourceTransparentContainer - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_07 /** * @desc Testcase function for TC_S1AP_MME_HAS_08 */ function f_TC_S1AP_MME_HAS_08() runs on S1APComponent { // Local variables const SourceRNC_ToTargetRNC_TransparentContainer c_sourceRNC_ToTargetRNC_TransparentContainer := '12121212'O; const TargetRNC_ToSourceRNC_TransparentContainer c_targetRNC_ToSourceRNC_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_HandoverRequired( m_HandoverRequiredIEs_SRVCCHOIndication( vc_MME_UE_ID, vc_eNB_UE_ID, ltetoutran, m_cause_ran(unspecified), m_TargetRNC_ID(m_LAI('000001'O, //plmn id '0001'O), //lac m_rNC_Id), c_sourceRNC_ToTargetRNC_TransparentContainer, pSandCS )); f_recv_HandoverCommand( mw_HandoverCommandIEs_NASSecurity( vc_MME_UE_ID, vc_eNB_UE_ID, ltetoutran,//handover_Type c_targetRNC_ToSourceRNC_TransparentContainer,//TargetToSourceTransparentContainer - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_08 /** * @desc Testcase function for TC_S1AP_MME_HAS_09 */ function f_TC_S1AP_MME_HAS_09() runs on S1APComponent { // Local variables const Source_ToTarget_TransparentContainer c_source_ToTarget_TransparentContainer := '12121212'O; const Target_ToSource_TransparentContainer c_target_ToSource_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_HandoverRequired( m_HandoverRequiredIEs_CSGID( vc_MME_UE_ID, vc_eNB_UE_ID, intralte, m_cause_ran(unspecified), m_TargeteNB_ID(m_Global_ENB_ID('000001'O, m_ENB_ID_macro), m_TAI('000001'O, '0001'O)), c_source_ToTarget_TransparentContainer, '000000000000000000000000001'B )); f_recv_HandoverPreparationFailure( mw_HandoverPreparationFailureIEs( vc_MME_UE_ID, vc_eNB_UE_ID, -//cause )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_09 /** * @desc Testcase function for TC_S1AP_MME_HAS_10 */ function f_TC_S1AP_MME_HAS_10() runs on S1APComponent { // Local variables // Preamble f_S1AP_mme_init(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body action("trigger an Handover request"); f_recv_HandoverRequest( mw_HandoverRequestIEs( -, -, -, -, {?},//E_RabsToBeSetupItem -, -, - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //send HandoverRequestAck // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_10 /** * @desc Testcase function for TC_S1AP_MME_HAS_11 */ function f_TC_S1AP_MME_HAS_11() runs on S1APComponent { // Local variables const Source_ToTarget_TransparentContainer c_source_ToTarget_TransparentContainer := '12121212'O; const Target_ToSource_TransparentContainer c_target_ToSource_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_PathSwitchRequest( m_PathSwitchRequestIEs( vc_eNB_UE_ID, {m_E_RABToBeSwitchedDLItem(1,-,-,-)}, vc_MME_UE_ID, m_eUTRAN_CGI('000001'O, //plmn id '0000000000000000000000000001'B ),//ci m_TAI('000001'O,'0001'O), m_UESecurityCapabilities('0101010101010101'B,'0101010101010101'B) )); f_recv_PathSwitchRequestAck( mw_PathSwitchRequestAckIEs( vc_MME_UE_ID, vc_eNB_UE_ID, -//security context )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_11 /** * @desc Testcase function for TC_S1AP_MME_HAS_12 */ function f_TC_S1AP_MME_HAS_12() runs on S1APComponent { // Local variables const Source_ToTarget_TransparentContainer c_source_ToTarget_TransparentContainer := '12121212'O; const Target_ToSource_TransparentContainer c_target_ToSource_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_PathSwitchRequest( m_PathSwitchRequestIEs( vc_eNB_UE_ID, {m_E_RABToBeSwitchedDLItem(1,-,-,-)}, vc_MME_UE_ID, m_eUTRAN_CGI('000001'O, //plmn id '0000000000000000000000000001'B ),//ci m_TAI('000001'O,'0001'O), m_UESecurityCapabilities('0101010101010101'B,'0101010101010101'B) )); f_recv_PathSwitchRequestFailure( mw_PathSwitchRequestFailureIEs( vc_MME_UE_ID, vc_eNB_UE_ID, -//cause )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_12 /** * @desc Testcase function for TC_S1AP_MME_HAS_13 */ function f_TC_S1AP_MME_HAS_13() runs on S1APComponent { // Local variables const Source_ToTarget_TransparentContainer c_source_ToTarget_TransparentContainer := '12121212'O; const Target_ToSource_TransparentContainer c_target_ToSource_TransparentContainer := '12121212'O; // Preamble f_S1AP_mme_init(); // Preamble action: E-RAB Setup is exchanged. //f_rABSetup...; f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Test body // sends a HANDOVER_REQUIRED f_send_PathSwitchRequest( m_PathSwitchRequestIEs( vc_eNB_UE_ID, { m_E_RABToBeSwitchedDLItem(1,-,-,-), m_E_RABToBeSwitchedDLItem(1,-,-,-) }, vc_MME_UE_ID, m_eUTRAN_CGI('000001'O, //plmn id '0000000000000000000000000001'B ),//ci m_TAI('000001'O,'0001'O), m_UESecurityCapabilities('0101010101010101'B,'0101010101010101'B) )); f_recv_PathSwitchRequestFailure( mw_PathSwitchRequestFailureIEs( vc_MME_UE_ID, vc_eNB_UE_ID, -//cause )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // Postamble //f_rABSetupRelease...; f_postamble_S1AP_eNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_S1AP_MME_HAS_13 } // End of group Handover_signalling_group /** Loading