new IE(E-RABToBeSetup) prepared for Context Management Group and will be used in TCFunction module
New test for Handover group added.
This commit is contained in:
parent
5d536932f8
commit
853d097ee7
|
@ -177,6 +177,15 @@ module LibS1AP_Steps {
|
|||
f_recv_S1AP_initiatingMessage(mw_HandoverRequired(p_value))
|
||||
} // End of function f_recv_HandoverRequired
|
||||
|
||||
/**
|
||||
* @desc Receive S1AP Message Handover Cancel
|
||||
* @param p_value Receive template for Handover Cancel IEs
|
||||
*/
|
||||
function f_recv_HandoverCancel(in template (present) RecordOf_ProtocolIE p_value :=?
|
||||
) runs on S1APComponent {
|
||||
f_recv_S1AP_initiatingMessage(mw_HandoverCancel(p_value))
|
||||
} // End of function f_recv_HandoverCancel
|
||||
|
||||
/**
|
||||
* @desc Receive S1AP Message InitialContext_SetupResponse
|
||||
* @param p_value Receive template for InitialContext_SetupResponse IEs
|
||||
|
|
|
@ -614,9 +614,8 @@ module LibS1AP_Templates {
|
|||
mw_handoverType_IE(p_HandoverType_value),
|
||||
mw_cause_IE(p_Cause_value),
|
||||
mw_source_ToTarget_TransparentContainer_IE(p_Source_ToTarget_TransparentContainer_value)
|
||||
|
||||
|
||||
} // End of template m_E_RABSetupReqIEs
|
||||
} // End of template mw_HandoverRequiredIEs
|
||||
|
||||
}// End of group HandoverPreparation
|
||||
|
||||
group HandoverPreparation{
|
||||
|
@ -627,6 +626,31 @@ module LibS1AP_Templates {
|
|||
|
||||
}// End of group HandoverResourceAllocation
|
||||
|
||||
group HandoverCancelation{
|
||||
|
||||
/**
|
||||
* @desc Receive template for InitiatingMessage message with Handover Cancel payload
|
||||
* @param p_value The procedure code value
|
||||
*/
|
||||
template (present) InitiatingMessage mw_HandoverCancel(
|
||||
template (present) RecordOf_ProtocolIE p_value) := {
|
||||
procedureCode := id_HandoverCancel,
|
||||
criticality := reject,
|
||||
value_ := {RecordOf_ProtocolIE := p_value}
|
||||
} // End of template mw_HandoverCancel
|
||||
|
||||
template (value) RecordOf_ProtocolIE mw_HandoverCancelIEs(
|
||||
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_HandoverCancelIEs
|
||||
|
||||
}// End of group HandoverCancelation
|
||||
|
||||
|
||||
group ERABModify{
|
||||
|
||||
|
@ -2758,6 +2782,20 @@ module LibS1AP_Templates {
|
|||
value_ := { RecordOf_E_RABToBeSetupItemBearerSUReq := valueof(p_value) }
|
||||
} // End of template m_E_RABToBeSetupList
|
||||
|
||||
/**
|
||||
* @desc Send template for E-RABToBeSetupListCtxtSUReq protocol IE
|
||||
* @param p_value Protocol IE value. Default: m_E_RABToBeSetupListCtxtSUReq
|
||||
*/
|
||||
template (value) ProtocolIE m_E_RABToBeSetupListCtxt(
|
||||
in template (value) RecordOf_E_RABToBeSetupItemCtxtSUReq p_value := { m_E_RABToBeSetupItemCtxtSUReq }
|
||||
) := {
|
||||
id := S1AP_Constants.id_E_RABToBeSetupListCtxtSUReq,
|
||||
criticality := reject,
|
||||
value_ := { RecordOf_E_RABToBeSetupItemCtxtSUReq := valueof(p_value) }
|
||||
} // End of template m_E_RABToBeSetupListCtxt
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @desc Send template for E-RABToBeModifiedItemBearerModReq protocol IE
|
||||
* @param p_value Protocol IE value. Default: m_E_RABToBeSetupItemBearerSUReq
|
||||
|
@ -3064,6 +3102,18 @@ module LibS1AP_Templates {
|
|||
criticality := ignore,
|
||||
value_ := { RecordOf_E_RABSetupItemBearerSURes := p_value }
|
||||
} // End of template
|
||||
|
||||
/**
|
||||
* @desc Receive template for E-RABSetupListCtxtSUReq protocol IE
|
||||
* @param p_value Expected protocol IE value. Default: m_E_RABToBeSetupItemBearerSUReq
|
||||
*/
|
||||
template (present) ProtocolIE mw_E_RABSetupListCtxt(
|
||||
template (present) RecordOf_E_RABToBeSetupItemCtxtSUReq p_value := { mw_E_RABToBeSetupItemCtxtSUReq }
|
||||
) := {
|
||||
id := S1AP_Constants.id_E_RABToBeSetupListCtxtSUReq,
|
||||
criticality := ignore,
|
||||
value_ := { RecordOf_E_RABToBeSetupItemCtxtSUReq := p_value }
|
||||
} // End of template
|
||||
|
||||
/**
|
||||
* @desc Receive template for E-RABToBeSetupListBearerSUReq protocol IE
|
||||
|
@ -3890,6 +3940,44 @@ module LibS1AP_Templates {
|
|||
iE_Extensions := *
|
||||
} // End of template mw_E_RABSetupItemBearerSURes
|
||||
|
||||
/**
|
||||
* @desc
|
||||
*/
|
||||
template(omit) E_RABToBeSetupItemCtxtSUReq m_E_RABToBeSetupItemCtxtSUReq(
|
||||
in E_RAB_ID p_e_RAB_ID := 0,
|
||||
in template (value) E_RABLevelQoSParameters p_e_RABlevelQoSParameters := m_e_RABlevelQoSParameters,
|
||||
in template (value) TransportLayerAddress p_transportLayerAddress := '0'B,
|
||||
in template (value) GTP_TEID p_gTP_TEID := '00000000'O,
|
||||
in template (omit) NAS_PDU p_nAS_PDU := '0000'O,
|
||||
in template (omit) E_RABToBeSetupItemCtxtSUReq.iE_Extensions p_iE_Extensions := omit
|
||||
) := {
|
||||
e_RAB_ID := p_e_RAB_ID,
|
||||
e_RABlevelQoSParameters := valueof(p_e_RABlevelQoSParameters),
|
||||
transportLayerAddress := p_transportLayerAddress,
|
||||
gTP_TEID := p_gTP_TEID,
|
||||
nAS_PDU := p_nAS_PDU,
|
||||
iE_Extensions := p_iE_Extensions
|
||||
} // End of template m_E_RABToBeSetupItemCtxtSUReq
|
||||
|
||||
/**
|
||||
* @desc
|
||||
*/
|
||||
template (present) E_RABToBeSetupItemCtxtSUReq mw_E_RABToBeSetupItemCtxtSUReq(
|
||||
template (present) E_RAB_ID p_e_RAB_ID := 0,
|
||||
template (present) E_RABLevelQoSParameters p_e_RABlevelQoSParameters := mw_e_RABlevelQoSParameters,
|
||||
template (present) TransportLayerAddress p_transportLayerAddress := '0'B,
|
||||
template (present) GTP_TEID p_gTP_TEID := '00000000'O,
|
||||
template NAS_PDU p_nAS_PDU := ?,
|
||||
template E_RABToBeSetupItemCtxtSUReq.iE_Extensions p_iE_Extensions := *
|
||||
) := {
|
||||
e_RAB_ID := p_e_RAB_ID,
|
||||
e_RABlevelQoSParameters := p_e_RABlevelQoSParameters,
|
||||
transportLayerAddress := p_transportLayerAddress,
|
||||
gTP_TEID := p_gTP_TEID,
|
||||
nAS_PDU := p_nAS_PDU,
|
||||
iE_Extensions := p_iE_Extensions
|
||||
} // End of template mw_E_RABToBeSetupItemCtxtSUReq
|
||||
|
||||
/**
|
||||
* @desc
|
||||
*/
|
||||
|
|
|
@ -20,6 +20,11 @@ module LibS1AP_TypesAndValues {
|
|||
*/
|
||||
type record of E_RABToBeSetupItemBearerSUReq RecordOf_E_RABToBeSetupItemBearerSUReq;
|
||||
|
||||
/**
|
||||
* @desc List of E-RABToBeSetupItemCtxtSUReq IEs
|
||||
*/
|
||||
type record of E_RABToBeSetupItemCtxtSUReq RecordOf_E_RABToBeSetupItemCtxtSUReq;
|
||||
|
||||
/**
|
||||
* @desc List of E-RABModifiedItemBearerSURes IEs
|
||||
*/
|
||||
|
|
|
@ -1680,7 +1680,7 @@ module S1AP_TCFunctions {
|
|||
)}
|
||||
));
|
||||
|
||||
|
||||
//TODO check case1 and case2 option
|
||||
|
||||
|
||||
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
|
||||
|
@ -1693,6 +1693,59 @@ module S1AP_TCFunctions {
|
|||
|
||||
} // End of function f_TC_S1AP_eNB_HAS_04
|
||||
|
||||
/**
|
||||
* @desc Testcase function for TC_S1AP_eNB_HAS_05
|
||||
*/
|
||||
function f_TC_S1AP_eNB_HAS_05() runs on S1APComponent {
|
||||
// Local variables
|
||||
const E_RAB_ID c_E_RAB_ID_A := 0;
|
||||
const NAS_PDU c_nAS_PDU := '0000'O;
|
||||
|
||||
// Preamble
|
||||
f_S1AP_enb_init();
|
||||
// Preamble action: TODO check if some preamble required
|
||||
|
||||
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
|
||||
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
|
||||
|
||||
// Test body
|
||||
// 1. to indicate a Handover to be forwarded
|
||||
if (fx_eNB_Handover_preparation_procedure() == false) {
|
||||
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
|
||||
} else {
|
||||
// 2. sends a HANDOVER_REQUIRED
|
||||
f_recv_HandoverRequired(
|
||||
mw_HandoverRequiredIEs(
|
||||
vc_MME_UE_ID,
|
||||
vc_eNB_UE_ID,
|
||||
intralte,//handover_Type
|
||||
-,//Cause
|
||||
-,//TargetId
|
||||
-//SourceToTargetTransparentContainer
|
||||
));
|
||||
|
||||
log("No response is send to IUT before timer TS1RELOCprep expires.");
|
||||
|
||||
//TODO f_wait
|
||||
|
||||
f_recv_HandoverCancel(
|
||||
mw_HandoverCancelIEs(
|
||||
vc_MME_UE_ID,
|
||||
vc_eNB_UE_ID,
|
||||
-//Cause
|
||||
));
|
||||
|
||||
|
||||
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
|
||||
}
|
||||
|
||||
// Postamble
|
||||
f_postamble_S1AP_eNB();
|
||||
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
|
||||
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
|
||||
|
||||
} // End of function f_TC_S1AP_eNB_HAS_05
|
||||
|
||||
} // End of group Handover_signalling_group
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue