MME_HAS_05-13 tests and related templates added
This commit is contained in:
parent
a644f364b8
commit
44e34daa3c
|
@ -213,6 +213,15 @@ module LibS1AP_Steps {
|
||||||
function f_recv_HandoverCommand(in template (present) RecordOf_ProtocolIE p_value :=?
|
function f_recv_HandoverCommand(in template (present) RecordOf_ProtocolIE p_value :=?
|
||||||
) runs on S1APComponent {
|
) runs on S1APComponent {
|
||||||
f_recv_S1AP_successfulOutcome(mw_HandoverCommand(p_value))
|
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
|
} // End of function f_recv_HandoverRequired
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -269,6 +278,24 @@ module LibS1AP_Steps {
|
||||||
f_recv_S1AP_initiatingMessage(mw_PathSwitchRequest(p_value))
|
f_recv_S1AP_initiatingMessage(mw_PathSwitchRequest(p_value))
|
||||||
} // End of function f_recv_PathSwitchRequest
|
} // 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
|
* @desc Receive S1AP Message eNB Status Transfer
|
||||||
* @param p_value Receive template for eNB Status Transfer IEs
|
* @param p_value Receive template for eNB Status Transfer IEs
|
||||||
|
@ -1107,6 +1134,16 @@ module LibS1AP_Steps {
|
||||||
f_send_S1AP_successfulOutcome(m_HandoverCommand(p_value))
|
f_send_S1AP_successfulOutcome(m_HandoverCommand(p_value))
|
||||||
} // End of function f_send_HandoverCommand
|
} // 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
|
* @desc Send S1AP Message Path Switch Request Acknowledge
|
||||||
* @param p_value Send template with IE for Path Switch Request Acknowledge
|
* @param p_value Send template with IE for Path Switch Request Acknowledge
|
||||||
|
|
|
@ -85,6 +85,18 @@ module LibS1AP_Templates {
|
||||||
m_source_ToTarget_TransparentContainer_IE(p_Source_ToTarget_TransparentContainer_value)
|
m_source_ToTarget_TransparentContainer_IE(p_Source_ToTarget_TransparentContainer_value)
|
||||||
} // End of template mw_HandoverCommandIEs
|
} // End of template mw_HandoverCommandIEs
|
||||||
|
|
||||||
|
template (value) RecordOf_ProtocolIE m_HandoverRequiredIEs_CSGID(
|
||||||
|
in template (value) MME_UE_S1AP_ID p_MME_value,
|
||||||
|
in template (value) ENB_UE_S1AP_ID p_eNB_value,
|
||||||
|
in template (value) HandoverType p_handoverType,
|
||||||
|
in template (value) Cause p_cause,
|
||||||
|
in template (value) TargetID p_targetId_value,
|
||||||
|
in template (value) Source_ToTarget_TransparentContainer p_Source_ToTarget_TransparentContainer_value,
|
||||||
|
in template (value) CSG_Id p_CSG_Id_value
|
||||||
|
) modifies m_HandoverRequiredIEs := {
|
||||||
|
m_CSG_Id_IE(p_CSG_Id_value)
|
||||||
|
} // End of template m_HandoverCommandIEs_CSGID
|
||||||
|
|
||||||
template (value) RecordOf_ProtocolIE m_HandoverRequiredIEs_CSGID_CellAccessMode(
|
template (value) RecordOf_ProtocolIE m_HandoverRequiredIEs_CSGID_CellAccessMode(
|
||||||
in template (value) MME_UE_S1AP_ID p_MME_value,
|
in template (value) MME_UE_S1AP_ID p_MME_value,
|
||||||
in template (value) ENB_UE_S1AP_ID p_eNB_value,
|
in template (value) ENB_UE_S1AP_ID p_eNB_value,
|
||||||
|
@ -97,7 +109,37 @@ module LibS1AP_Templates {
|
||||||
) modifies m_HandoverRequiredIEs := {
|
) modifies m_HandoverRequiredIEs := {
|
||||||
m_CSG_Id_IE(p_CSG_Id_value),
|
m_CSG_Id_IE(p_CSG_Id_value),
|
||||||
m_CellAccessMode_IE(p_CellAccessMode_value)
|
m_CellAccessMode_IE(p_CellAccessMode_value)
|
||||||
} // End of template mw_HandoverCommandIEs
|
} // End of template m_HandoverRequiredIEs_CSGID_CellAccessMode
|
||||||
|
|
||||||
|
template (value) RecordOf_ProtocolIE m_HandoverRequiredIEs_SRVCCHOIndication(
|
||||||
|
in template (value) MME_UE_S1AP_ID p_MME_value,
|
||||||
|
in template (value) ENB_UE_S1AP_ID p_eNB_value,
|
||||||
|
in template (value) HandoverType p_handoverType,
|
||||||
|
in template (value) Cause p_cause,
|
||||||
|
in template (value) TargetID p_targetId_value,
|
||||||
|
in template (value) Source_ToTarget_TransparentContainer p_Source_ToTarget_TransparentContainer_value,
|
||||||
|
in template (value) SRVCCHOIndication p_SRVCC_HO_Indication_value
|
||||||
|
) modifies m_HandoverRequiredIEs := {
|
||||||
|
m_SRVCCHOIndication_IE(p_SRVCC_HO_Indication_value)
|
||||||
|
} // End of template m_HandoverRequiredIEs_SRVCCHOIndication
|
||||||
|
|
||||||
|
template (value) RecordOf_ProtocolIE m_HandoverRequiredIEs_SRVCCHOInd_S2TTransCont2nd_MSClassmark23(
|
||||||
|
in template (value) MME_UE_S1AP_ID p_MME_value,
|
||||||
|
in template (value) ENB_UE_S1AP_ID p_eNB_value,
|
||||||
|
in template (value) HandoverType p_handoverType,
|
||||||
|
in template (value) Cause p_cause,
|
||||||
|
in template (value) TargetID p_targetId_value,
|
||||||
|
in template (value) Source_ToTarget_TransparentContainer p_Source_ToTarget_TransparentContainer_value,
|
||||||
|
in template (value) Source_ToTarget_TransparentContainer p_Source_ToTarget_TransparentContainer2_value,
|
||||||
|
in template (value) SRVCCHOIndication p_SRVCC_HO_Indication_value,
|
||||||
|
in template (value) MSClassmark2 p_MSClassMark2_value,
|
||||||
|
in template (value) MSClassmark3 p_MSClassMark3_value
|
||||||
|
) modifies m_HandoverRequiredIEs := {
|
||||||
|
m_source_ToTarget_TransparentContainer_2nd_IE(p_Source_ToTarget_TransparentContainer2_value),
|
||||||
|
m_SRVCCHOIndication_IE(p_SRVCC_HO_Indication_value),
|
||||||
|
m_MSClassmark2_IE(p_MSClassMark2_value),
|
||||||
|
m_MSClassmark3_IE(p_MSClassMark3_value)
|
||||||
|
} // End of template m_HandoverRequiredIEs_SRVCCHOIndication
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @desc Send template for SuccessfulOutcome message with Handover Command payload
|
* @desc Send template for SuccessfulOutcome message with Handover Command payload
|
||||||
|
@ -212,6 +254,33 @@ module LibS1AP_Templates {
|
||||||
}// End of group HandoverCancelation
|
}// End of group HandoverCancelation
|
||||||
|
|
||||||
group PathSwitchRequest_send {
|
group PathSwitchRequest_send {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Send template for InitiatingMessage message with Path Switch Request payload
|
||||||
|
* @param p_value The procedure code value
|
||||||
|
*/
|
||||||
|
template (value) InitiatingMessage m_PathSwitchRequest(
|
||||||
|
in template (value) RecordOf_ProtocolIE p_value) := {
|
||||||
|
procedureCode := id_PathSwitchRequest,
|
||||||
|
criticality := reject,
|
||||||
|
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
|
||||||
|
} // End of template m_PathSwitchRequest
|
||||||
|
|
||||||
|
template (value) RecordOf_ProtocolIE m_PathSwitchRequestIEs(
|
||||||
|
in template (value) ENB_UE_S1AP_ID p_eNB_value,
|
||||||
|
in template (value) RecordOf_E_RABToBeSwitchedDLItem p_RecordOf_E_RABToBeSwitchedDLItem_value,
|
||||||
|
in template (value) MME_UE_S1AP_ID p_MME_value,
|
||||||
|
in template (value) EUTRAN_CGI p_eUtranCgi,
|
||||||
|
in template (value) TAI p_tai,
|
||||||
|
in template (value) UESecurityCapabilities p_UESecurityCapabilities
|
||||||
|
) := {
|
||||||
|
m_eNB_UE_S1AP_ID(p_eNB_value),
|
||||||
|
m_E_RABToBeSwitchedDLList(p_RecordOf_E_RABToBeSwitchedDLItem_value),
|
||||||
|
m_sourceMmeUeS1apId(p_MME_value),
|
||||||
|
m_eUTRAN_CGI_IE(p_eUtranCgi),
|
||||||
|
m_tAI_IE(p_tai),
|
||||||
|
m_UE_securityCapabilities_IE(p_UESecurityCapabilities, ignore)
|
||||||
|
} // End of template m_PathSwitchRequestIEs
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @desc Send template for SuccessfulOutcome message with Path Switch Request Ack payload
|
* @desc Send template for SuccessfulOutcome message with Path Switch Request Ack payload
|
||||||
|
@ -1029,12 +1098,47 @@ module LibS1AP_Templates {
|
||||||
mw_eNB_UE_S1AP_ID(p_eNB_value),
|
mw_eNB_UE_S1AP_ID(p_eNB_value),
|
||||||
mw_handoverType_IE(p_HandoverType_value),
|
mw_handoverType_IE(p_HandoverType_value),
|
||||||
mw_cause_IE(p_Cause_value),
|
mw_cause_IE(p_Cause_value),
|
||||||
|
mw_TargetID_IE(p_TargetId_value),
|
||||||
mw_source_ToTarget_TransparentContainer_IE(p_Source_ToTarget_TransparentContainer_value)
|
mw_source_ToTarget_TransparentContainer_IE(p_Source_ToTarget_TransparentContainer_value)
|
||||||
} // End of template mw_HandoverRequiredIEs
|
} // End of template mw_HandoverRequiredIEs
|
||||||
|
|
||||||
|
template (present) RecordOf_ProtocolIE mw_HandoverRequiredIEs_SRVCCHOIndication(
|
||||||
|
template (present) MME_UE_S1AP_ID p_MME_value := ?,
|
||||||
|
template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
|
||||||
|
template (present) HandoverType p_HandoverType_value := ?,
|
||||||
|
template (present) Cause p_Cause_value := ?,
|
||||||
|
template (present) TargetID p_TargetId_value := ?,
|
||||||
|
template (present) Source_ToTarget_TransparentContainer p_Source_ToTarget_TransparentContainer_value := ?,
|
||||||
|
template (present) SRVCCHOIndication p_SRVCC_HO_Indication_value := ?
|
||||||
|
) modifies mw_HandoverRequiredIEs:= {
|
||||||
|
mw_SRVCCHOIndication_IE(p_SRVCC_HO_Indication_value)
|
||||||
|
} // End of template mw_HandoverRequiredIEs_SRVCC
|
||||||
|
|
||||||
}// End of group HandoverPreparation
|
}// End of group HandoverPreparation
|
||||||
|
|
||||||
group HandoverPreparation{
|
group HandoverPreparation{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Receive template for unsuccessfulOutcome message with Handover Preparation Failure payload
|
||||||
|
* @param p_value The expected protocol information elements. Default: ?
|
||||||
|
*/
|
||||||
|
template (present) UnsuccessfulOutcome mw_HandoverPreparationFailure(
|
||||||
|
template (present) RecordOf_ProtocolIE p_value) := {
|
||||||
|
procedureCode := id_HandoverPreparation,
|
||||||
|
criticality := reject,
|
||||||
|
value_ := {RecordOf_ProtocolIE := p_value}
|
||||||
|
} // End of template mw_HandoverPreparationFailure
|
||||||
|
|
||||||
|
template (present) RecordOf_ProtocolIE mw_HandoverPreparationFailureIEs(
|
||||||
|
template (present) MME_UE_S1AP_ID p_MME_value := ?,
|
||||||
|
template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
|
||||||
|
template (present) Cause p_Cause_value := ?
|
||||||
|
) := {
|
||||||
|
mw_MME_UE_S1AP_ID(p_MME_value),
|
||||||
|
mw_eNB_UE_S1AP_ID(p_eNB_value),
|
||||||
|
mw_cause_IE(p_Cause_value)
|
||||||
|
} // End of template mw_HandoverPreparationFailureIEs
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @desc Receive template for SuccessfulOutcome message with Handover Command payload
|
* @desc Receive template for SuccessfulOutcome message with Handover Command payload
|
||||||
|
@ -1067,7 +1171,19 @@ module LibS1AP_Templates {
|
||||||
template (present) NASSecurityParameterstoE_UTRAN p_nasSecurityParametersToEutran_value := ?
|
template (present) NASSecurityParameterstoE_UTRAN p_nasSecurityParametersToEutran_value := ?
|
||||||
) modifies mw_HandoverCommandIEs:= {
|
) modifies mw_HandoverCommandIEs:= {
|
||||||
mw_nasSecurityParametersToEutran_IE(p_nasSecurityParametersToEutran_value)
|
mw_nasSecurityParametersToEutran_IE(p_nasSecurityParametersToEutran_value)
|
||||||
} // End of template mw_HandoverRequiredIEs
|
} // End of template mw_HandoverCommandIEs_NASSecurity
|
||||||
|
|
||||||
|
template (present) RecordOf_ProtocolIE mw_HandoverCommandIEs_T2STransCont2nd_NASSecurity(
|
||||||
|
template (present) MME_UE_S1AP_ID p_MME_value := ?,
|
||||||
|
template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
|
||||||
|
template (present) HandoverType p_HandoverType_value := ?,
|
||||||
|
template (present) Target_ToSource_TransparentContainer p_Target_ToSource_TransparentContainer_value := ?,
|
||||||
|
template (present) Target_ToSource_TransparentContainer p_Target_ToSource_TransparentContainer2_value := ?,
|
||||||
|
template (present) NASSecurityParameterstoE_UTRAN p_nasSecurityParametersToEutran_value := ?
|
||||||
|
) modifies mw_HandoverCommandIEs:= {
|
||||||
|
mw_target_ToSource_TransparentContainer_2nd_IE(p_Target_ToSource_TransparentContainer2_value),
|
||||||
|
mw_nasSecurityParametersToEutran_IE(p_nasSecurityParametersToEutran_value)
|
||||||
|
} // End of template mw_HandoverCommandIEs_T2STransCont2nd_NASSecurity
|
||||||
|
|
||||||
}// End of group HandoverPreparation
|
}// End of group HandoverPreparation
|
||||||
|
|
||||||
|
@ -1230,6 +1346,48 @@ module LibS1AP_Templates {
|
||||||
mw_tAI_IE(p_tai),
|
mw_tAI_IE(p_tai),
|
||||||
mw_UE_securityCapabilities_IE(p_UESecurityCapabilities, ignore)
|
mw_UE_securityCapabilities_IE(p_UESecurityCapabilities, ignore)
|
||||||
} // End of template mw_PathSwitchRequestIEs
|
} // End of template mw_PathSwitchRequestIEs
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Receive template for InitiatingMessage message with Path Switch Request Ack payload
|
||||||
|
* @param p_value The expected protocol information elements. Default: ?
|
||||||
|
*/
|
||||||
|
template (present) InitiatingMessage mw_PathSwitchRequestAck(
|
||||||
|
template (present) RecordOf_ProtocolIE p_value) := {
|
||||||
|
procedureCode := id_PathSwitchRequest,
|
||||||
|
criticality := reject,
|
||||||
|
value_ := {RecordOf_ProtocolIE := p_value}
|
||||||
|
} // End of template mw_PathSwitchRequestAck
|
||||||
|
|
||||||
|
template (present) RecordOf_ProtocolIE mw_PathSwitchRequestAckIEs(
|
||||||
|
template (present) MME_UE_S1AP_ID p_MME_value :=?,
|
||||||
|
template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
|
||||||
|
template (present) SecurityContext p_securityContext := ?
|
||||||
|
) := {
|
||||||
|
mw_MME_UE_S1AP_ID(p_MME_value),
|
||||||
|
mw_eNB_UE_S1AP_ID(p_eNB_value),
|
||||||
|
mw_securityContext_IE(p_securityContext)
|
||||||
|
} // End of template mw_PathSwitchRequestAckIEs
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Receive template for UnsuccessfulOutcome message with PathSwitchRequest Failure payload
|
||||||
|
* @param p_value The expected protocol information elements. Default: ?
|
||||||
|
*/
|
||||||
|
template (present) UnsuccessfulOutcome mw_PathSwitchRequestFailure(
|
||||||
|
template (present) RecordOf_ProtocolIE p_value) := {
|
||||||
|
procedureCode := id_PathSwitchRequest,
|
||||||
|
criticality := reject,
|
||||||
|
value_ := {RecordOf_ProtocolIE := p_value}
|
||||||
|
} // End of template mw_PathSwitchRequestFailure
|
||||||
|
|
||||||
|
template (present) RecordOf_ProtocolIE mw_PathSwitchRequestFailureIEs(
|
||||||
|
template (present) MME_UE_S1AP_ID p_MME_value := ?,
|
||||||
|
template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
|
||||||
|
template (present) Cause p_Cause_value := ?
|
||||||
|
) := {
|
||||||
|
mw_MME_UE_S1AP_ID(p_MME_value),
|
||||||
|
mw_eNB_UE_S1AP_ID(p_eNB_value),
|
||||||
|
mw_cause_IE(p_Cause_value)
|
||||||
|
} // End of template mw_PathSwitchRequestFailureIEs
|
||||||
|
|
||||||
}// End of group PathSwitchRequest
|
}// End of group PathSwitchRequest
|
||||||
|
|
||||||
|
@ -3590,7 +3748,7 @@ module LibS1AP_Templates {
|
||||||
*/
|
*/
|
||||||
template (value) ProtocolIE m_cause_IE(
|
template (value) ProtocolIE m_cause_IE(
|
||||||
in template (value) Cause p_cause,
|
in template (value) Cause p_cause,
|
||||||
in template (value) ProtocolIE.criticality p_criticality := reject
|
in template (value) ProtocolIE.criticality p_criticality := ignore
|
||||||
) := {
|
) := {
|
||||||
id := S1AP_Constants.id_Cause,
|
id := S1AP_Constants.id_Cause,
|
||||||
criticality := p_criticality,
|
criticality := p_criticality,
|
||||||
|
@ -3638,6 +3796,20 @@ module LibS1AP_Templates {
|
||||||
template ENB_ID m_ENB_ID_home:={
|
template ENB_ID m_ENB_ID_home:={
|
||||||
homeENB_ID :='0000000000000000000000000001'B
|
homeENB_ID :='0000000000000000000000000001'B
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Send template for TAI protocol IE
|
||||||
|
* @param p_tai Expected tai value
|
||||||
|
* @see ETSI TS 136 413 V13.4.0 Clause 9.2.3.16 TAI
|
||||||
|
*/
|
||||||
|
template (value) ProtocolIE m_tAI_IE(
|
||||||
|
in template (value) TAI p_tai,
|
||||||
|
in template (value) ProtocolIE.criticality p_criticality := ignore
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_TAI,
|
||||||
|
criticality := p_criticality,
|
||||||
|
value_ := {TAI := valueof(p_tai)}
|
||||||
|
} // End of template m_tAI_IE
|
||||||
|
|
||||||
template (value) TAI m_TAI (
|
template (value) TAI m_TAI (
|
||||||
in template (value) PLMNidentity p_PLMNidentity,
|
in template (value) PLMNidentity p_PLMNidentity,
|
||||||
|
@ -3686,6 +3858,20 @@ module LibS1AP_Templates {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Send template for SRVCCHOIndication protocol IE
|
||||||
|
* @param p_SRVCCHOIndication SRVCCHOIndication value.
|
||||||
|
* @see ETSI TS 136 413 V13.4.0 Clause 9.2.1.59
|
||||||
|
*/
|
||||||
|
template (value) ProtocolIE m_SRVCCHOIndication_IE(
|
||||||
|
template (value) SRVCCHOIndication p_SRVCCHOIndication,
|
||||||
|
template (value) ProtocolIE.criticality p_criticality := reject
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_SRVCCHOIndication,
|
||||||
|
criticality := p_criticality,
|
||||||
|
value_ := {SRVCCHOIndication := valueof(p_SRVCCHOIndication)}
|
||||||
|
} // End of template mw_SRVCCHOIndication_IE
|
||||||
|
|
||||||
template (value) ProtocolIE m_CSG_Id_IE(
|
template (value) ProtocolIE m_CSG_Id_IE(
|
||||||
in template (value) CSG_Id p_value,
|
in template (value) CSG_Id p_value,
|
||||||
in template (value) ProtocolIE.criticality p_criticality := reject
|
in template (value) ProtocolIE.criticality p_criticality := reject
|
||||||
|
@ -3706,6 +3892,15 @@ module LibS1AP_Templates {
|
||||||
value_ := {CellAccessMode := valueof(p_value)}
|
value_ := {CellAccessMode := valueof(p_value)}
|
||||||
} // End of template m_CellAccessMode_IE
|
} // End of template m_CellAccessMode_IE
|
||||||
|
|
||||||
|
template (value) ProtocolIE m_eUTRAN_CGI_IE(
|
||||||
|
in template (value) EUTRAN_CGI p_eUTRAN_CGI,
|
||||||
|
in template (value) ProtocolIE.criticality p_criticality := ignore
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_EUTRAN_CGI,
|
||||||
|
criticality := p_criticality,
|
||||||
|
value_ := {EUTRAN_CGI := valueof(p_eUTRAN_CGI)}
|
||||||
|
} // End of template m_eUTRAN_CGI_IE
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @desc Send template for UE aggregate maxmum bitrate IE
|
* @desc Send template for UE aggregate maxmum bitrate IE
|
||||||
* @param p_value UEAggregateMaximumBitrate value
|
* @param p_value UEAggregateMaximumBitrate value
|
||||||
|
@ -3921,6 +4116,20 @@ module LibS1AP_Templates {
|
||||||
value_ := { ENB_UE_S1AP_ID := p_value }
|
value_ := { ENB_UE_S1AP_ID := p_value }
|
||||||
} // End of template m_eNB_UE_S1AP_ID
|
} // End of template m_eNB_UE_S1AP_ID
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Send template for source MME UE S1AP ID protocol IE
|
||||||
|
* @param p_value MME/UE S1AP identifier. Default: 1
|
||||||
|
* @see ETSI TS 136 413 V13.4.0 Clause 9.2.3.3 MME UE S1AP ID
|
||||||
|
*/
|
||||||
|
template (present) ProtocolIE m_sourceMmeUeS1apId(
|
||||||
|
in template (value) MME_UE_S1AP_ID p_value,
|
||||||
|
in template (value) ProtocolIE.criticality p_criticality := reject
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_SourceMME_UE_S1AP_ID,
|
||||||
|
criticality := p_criticality,
|
||||||
|
value_ := {MME_UE_S1AP_ID := valueof(p_value)}
|
||||||
|
} // End of template m_sourceMmeUeS1apId
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @desc Send template for E-RABToBeSetupListBearerSUReq protocol IE
|
* @desc Send template for E-RABToBeSetupListBearerSUReq protocol IE
|
||||||
* @param p_value Protocol IE value. Default: m_E_RABToBeSetupItemBearerSUReq
|
* @param p_value Protocol IE value. Default: m_E_RABToBeSetupItemBearerSUReq
|
||||||
|
@ -3957,6 +4166,34 @@ module LibS1AP_Templates {
|
||||||
value_ := { RecordOf_E_RABToBeSetupItemHOReq := valueof(p_value) }
|
value_ := { RecordOf_E_RABToBeSetupItemHOReq := valueof(p_value) }
|
||||||
} // End of template m_E_RABToBeSetupListHOReq
|
} // End of template m_E_RABToBeSetupListHOReq
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Send template for E-RABToBeSwitchedDLList protocol IE
|
||||||
|
* @param p_value Protocol IE value. Default: mw_E_RABToBeSwitchedDLItem
|
||||||
|
*/
|
||||||
|
template (value) ProtocolIE m_E_RABToBeSwitchedDLList(
|
||||||
|
in template (value) RecordOf_E_RABToBeSwitchedDLItem p_value := { m_E_RABToBeSwitchedDLItem(0,-,-,-) }
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_E_RABToBeSwitchedDLList,
|
||||||
|
criticality := reject,
|
||||||
|
value_ := { RecordOf_E_RABToBeSwitchedDLItem := valueof(p_value) }
|
||||||
|
} // End of template m_E_RABToBeSwitchedDLList
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc
|
||||||
|
* @param p_e_RAB_ID
|
||||||
|
*/
|
||||||
|
template (value) E_RABToBeSwitchedDLItem m_E_RABToBeSwitchedDLItem(
|
||||||
|
in template (value) E_RAB_ID p_e_RAB_ID,
|
||||||
|
in template (value) TransportLayerAddress p_transportLayerAddress := '0'B,
|
||||||
|
in template (value) GTP_TEID p_gTP_TEID := '00000000'O,
|
||||||
|
in template (omit) E_RABToBeSwitchedDLItem.iE_Extensions p_iE_Extensions := omit
|
||||||
|
) := {
|
||||||
|
e_RAB_ID := valueof(p_e_RAB_ID),
|
||||||
|
transportLayerAddress := p_transportLayerAddress,
|
||||||
|
gTP_TEID := p_gTP_TEID,
|
||||||
|
iE_Extensions := p_iE_Extensions
|
||||||
|
} // End of template m_E_RABToBeSwitchedDLItem
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @desc Send template for E-RABSetupListBearerSURes protocol IE
|
* @desc Send template for E-RABSetupListBearerSURes protocol IE
|
||||||
* @param p_value Protocol IE value. Default: m_E_RABToBeSetupItemBearerSUReq
|
* @param p_value Protocol IE value. Default: m_E_RABToBeSetupItemBearerSUReq
|
||||||
|
@ -4100,6 +4337,21 @@ module LibS1AP_Templates {
|
||||||
value_ := { Source_ToTarget_TransparentContainer := p_value }
|
value_ := { Source_ToTarget_TransparentContainer := p_value }
|
||||||
} // End of template m_source_ToTarget_TransparentContainer_IE
|
} // End of template m_source_ToTarget_TransparentContainer_IE
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc
|
||||||
|
* @param p_value
|
||||||
|
* @param p_criticality
|
||||||
|
*/
|
||||||
|
template (value) ProtocolIE m_source_ToTarget_TransparentContainer_2nd_IE(
|
||||||
|
in template (value) Source_ToTarget_TransparentContainer p_value,
|
||||||
|
in template (value) ProtocolIE.criticality p_criticality := reject
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_Source_ToTarget_TransparentContainer_Secondary,
|
||||||
|
criticality := p_criticality,
|
||||||
|
value_ := { Source_ToTarget_TransparentContainer := p_value }
|
||||||
|
} // End of template m_source_ToTarget_TransparentContainer_2nd_IE
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @desc
|
* @desc
|
||||||
* @param p_value
|
* @param p_value
|
||||||
|
@ -4114,6 +4366,34 @@ module LibS1AP_Templates {
|
||||||
value_ := { Target_ToSource_TransparentContainer := p_value }
|
value_ := { Target_ToSource_TransparentContainer := p_value }
|
||||||
} // End of template m_target_ToSource_TransparentContainer_IE
|
} // End of template m_target_ToSource_TransparentContainer_IE
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc
|
||||||
|
* @param p_value
|
||||||
|
* @param p_criticality
|
||||||
|
*/
|
||||||
|
template (value) ProtocolIE m_MSClassmark2_IE(
|
||||||
|
in template (value) MSClassmark2 p_value,
|
||||||
|
in template (value) ProtocolIE.criticality p_criticality := reject
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_MSClassmark2,
|
||||||
|
criticality := p_criticality,
|
||||||
|
value_ := { MSClassmark2 := p_value }
|
||||||
|
} // End of template m_MSClassMark2_IE
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc
|
||||||
|
* @param p_value
|
||||||
|
* @param p_criticality
|
||||||
|
*/
|
||||||
|
template (value) ProtocolIE m_MSClassmark3_IE(
|
||||||
|
in template (value) MSClassmark3 p_value,
|
||||||
|
in template (value) ProtocolIE.criticality p_criticality := ignore
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_MSClassmark3,
|
||||||
|
criticality := p_criticality,
|
||||||
|
value_ := { MSClassmark3 := p_value }
|
||||||
|
} // End of template m_MSClassMark3_IE
|
||||||
|
|
||||||
|
|
||||||
} // End of group Handover_group
|
} // End of group Handover_group
|
||||||
|
|
||||||
|
@ -4844,13 +5124,42 @@ module LibS1AP_Templates {
|
||||||
*/
|
*/
|
||||||
template (present) ProtocolIE mw_cause_IE(
|
template (present) ProtocolIE mw_cause_IE(
|
||||||
template (present) Cause p_cause := ?,
|
template (present) Cause p_cause := ?,
|
||||||
template (present) ProtocolIE.criticality p_criticality := reject
|
template (present) ProtocolIE.criticality p_criticality := ignore
|
||||||
) := {
|
) := {
|
||||||
id := S1AP_Constants.id_Cause,
|
id := S1AP_Constants.id_Cause,
|
||||||
criticality := p_criticality,
|
criticality := p_criticality,
|
||||||
value_ := {Cause := p_cause}
|
value_ := {Cause := p_cause}
|
||||||
} // End of template mw_cause_IE
|
} // End of template mw_cause_IE
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Receive template for TargetID protocol IE
|
||||||
|
* @param p_TargetID Expected Target value. Default: ?
|
||||||
|
* @see ETSI TS 136 413 V13.4.0 Clause 9.2.1.6 Cause
|
||||||
|
*/
|
||||||
|
template (present) ProtocolIE mw_TargetID_IE(
|
||||||
|
template (present) TargetID p_TargetID := ?,
|
||||||
|
template (present) ProtocolIE.criticality p_criticality := reject
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_TargetID,
|
||||||
|
criticality := p_criticality,
|
||||||
|
value_ := {TargetID := p_TargetID}
|
||||||
|
} // End of template mw_TargetID_IE
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Receive template for SRVCCHOIndication protocol IE
|
||||||
|
* @param p_SRVCCHOIndication Expected SRVCCHOIndication value. Default: ?
|
||||||
|
* @see ETSI TS 136 413 V13.4.0 Clause 9.2.1.59
|
||||||
|
*/
|
||||||
|
template (present) ProtocolIE mw_SRVCCHOIndication_IE(
|
||||||
|
template (present) SRVCCHOIndication p_SRVCCHOIndication := ?,
|
||||||
|
template (present) ProtocolIE.criticality p_criticality := reject
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_SRVCCHOIndication,
|
||||||
|
criticality := p_criticality,
|
||||||
|
value_ := {SRVCCHOIndication := p_SRVCCHOIndication}
|
||||||
|
} // End of template mw_SRVCCHOIndication_IE
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @desc Receive template for Cause protocol IE
|
* @desc Receive template for Cause protocol IE
|
||||||
* @param p_cause Expected Cause value. Default: ?
|
* @param p_cause Expected Cause value. Default: ?
|
||||||
|
@ -5189,6 +5498,20 @@ module LibS1AP_Templates {
|
||||||
criticality := p_criticality,
|
criticality := p_criticality,
|
||||||
value_ := { Target_ToSource_TransparentContainer := p_value }
|
value_ := { Target_ToSource_TransparentContainer := p_value }
|
||||||
} // End of template mw_target_ToSource_TransparentContainer_IE
|
} // End of template mw_target_ToSource_TransparentContainer_IE
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc
|
||||||
|
* @param p_value
|
||||||
|
* @param p_criticality
|
||||||
|
*/
|
||||||
|
template (present) ProtocolIE mw_target_ToSource_TransparentContainer_2nd_IE(
|
||||||
|
template (present) Target_ToSource_TransparentContainer p_value := ?,
|
||||||
|
template (present) ProtocolIE.criticality p_criticality := reject
|
||||||
|
) := {
|
||||||
|
id := S1AP_Constants.id_Target_ToSource_TransparentContainer_Secondary,
|
||||||
|
criticality := p_criticality,
|
||||||
|
value_ := { Target_ToSource_TransparentContainer := p_value }
|
||||||
|
} // End of template mw_target_ToSource_TransparentContainer_2nd_IE
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @desc
|
* @desc
|
||||||
|
@ -5900,6 +6223,23 @@ module LibS1AP_Templates {
|
||||||
iE_Extensions := *
|
iE_Extensions := *
|
||||||
} // End of template mw_Global_eNB_ID
|
} // End of template mw_Global_eNB_ID
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @desc Send template for E-UTRAN CGI
|
||||||
|
* @param p_pLMNidentity Expected PLMNidentity. Default: ?
|
||||||
|
* @param p_cell_ID Expected cell identifier. Default: ?
|
||||||
|
* @see ETSI TS 136 413 V13.4.0 Clause 9.2.1.38 E-UTRAN CGI
|
||||||
|
*/
|
||||||
|
template (value) EUTRAN_CGI m_eUTRAN_CGI(
|
||||||
|
in template (value) PLMNidentity p_pLMNidentity,
|
||||||
|
in template (value) CellIdentity p_cell_ID
|
||||||
|
) := {
|
||||||
|
pLMNidentity := valueof(p_pLMNidentity),
|
||||||
|
cell_ID := valueof(p_cell_ID),
|
||||||
|
iE_Extensions := omit
|
||||||
|
} // End of template m_eUTRAN_CGI
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @desc Receive template for E-UTRAN CGI
|
* @desc Receive template for E-UTRAN CGI
|
||||||
* @param p_pLMNidentity Expected PLMNidentity. Default: ?
|
* @param p_pLMNidentity Expected PLMNidentity. Default: ?
|
||||||
|
|
|
@ -5192,7 +5192,443 @@ module S1AP_TCFunctions {
|
||||||
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
|
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
|
||||||
|
|
||||||
} // End of function f_TC_S1AP_MME_HAS_04_ENB2
|
} // 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
|
} // End of group Handover_signalling_group
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue