completion of f_TC_S1AP_eNB_RAB_20 and f_TC_S1AP_eNB_RAB_21

This commit is contained in:
ulrichst 2017-05-10 09:50:06 +00:00
parent 29d1c79ad1
commit 8bbae62815
3 changed files with 234 additions and 113 deletions

View File

@ -137,22 +137,35 @@ module LibS1AP_Steps {
/**
* @desc Receive S1AP Message E_RABReleaseResponse
* @param p_value Receive template for E_RABReleaseResponse IEs
*/
function f_recv_E_RABReleaseResponse(
template (present) RecordOf_ProtocolIE p_value := ?
) runs on S1APComponent {
f_recv_S1AP_successfulOutcome(mw_E_RABReleaseResponse(p_value))
} // End of f_recv_E_RABReleaseResponse
*/
function f_recv_E_RABReleaseResponse(
template (present) RecordOf_ProtocolIE p_value := ?
) runs on S1APComponent {
f_recv_S1AP_successfulOutcome(mw_E_RABReleaseResponseIE(p_value))
} // End of f_recv_E_RABReleaseResponse
/**
* @desc Receive S1AP Message E_RABModifiedResponse
* @param p_value Receive template for E_RABModifiedResponse IEs
*/
function f_recv_E_RABModifiedResponse(
* @desc Receive S1AP Message E_RABModifiedResponse
* @param p_value Receive template for E_RABModifiedResponse IEs
*/
function f_recv_E_RABModifiedResponse(
template (present) RecordOf_ProtocolIE p_value := ?
) runs on S1APComponent {
) runs on S1APComponent {
f_recv_S1AP_successfulOutcome(mw_E_RABModifiedResponse(p_value))
} // End of f_recv_E_RABModifiedResponse
} // End of f_recv_E_RABModifiedResponse
function f_recv_E_RABReleaseIndication(
template (present) RecordOf_ProtocolIE p_value := ?
) runs on S1APComponent {
f_recv_S1AP_successfulOutcome(mw_E_RABReleaseIndication_IE(p_value))
}
function f_recv_E_RABModificationIndication(
template (present) RecordOf_ProtocolIE p_value := ?
) runs on S1APComponent {
f_recv_S1AP_successfulOutcome(mw_E_RABModificationIndication_IE(p_value))
}
/**
* @desc Receive S1AP Message E_RABModifiedRequest
@ -1721,8 +1734,15 @@ module LibS1AP_Steps {
in boolean p_associated_signalling_mode
) return boolean;
/**
* @desc Trigger a E-RAB Release procedure
* @param TODO
* @return true on success, false otherwise
*/
external function fx_eNB_erab_Release_indication_procedure( in boolean p_param) return boolean;
external function fx_eNB_erab_modification_indication_procedure ( in boolean p_param) return boolean;
} // End of group mmeRole
} // End of group externalFunctions

View File

@ -240,17 +240,6 @@ module LibS1AP_Templates {
group ERABSetup{
/**
* @desc Send template for InitiatingMessage message with E-RABSetup payload
* @param p_value The protocol information elements.
*/
template (value) InitiatingMessage m_E_RABSetupRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABSetup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABSetupRequest
template (value) RecordOf_ProtocolIE m_E_RABSetupReqIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
@ -289,17 +278,6 @@ module LibS1AP_Templates {
m_E_RABToBeSetupList(p_RecordOf_E_RABToBeSetupItem_value)
} // End of template m_E_RABSetupReqIEs
/**
* @desc Send template for InitiatingMessage message with E-RABSetup response payload
* @param p_value The procedure code value
*/
template (value) InitiatingMessage m_E_RABSetupResponse(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABSetup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABSetupResponse
template (value) RecordOf_ProtocolIE m_E_RABSetupResIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
@ -315,16 +293,7 @@ module LibS1AP_Templates {
group ERABModifyRequest {
/**
* @desc Send template for InitiatingMessage message with E-RABModify payload
* @param p_value The protocol information elements.
*/
template (value) InitiatingMessage m_E_RABModifiedRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABModify,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABModifiedRequest
template (value) RecordOf_ProtocolIE m_E_RABModifiedReqIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
@ -339,18 +308,6 @@ module LibS1AP_Templates {
} // End of group ERABModifyRequest
group ERABModifyInd {
/**
* @desc Send template for InitiatingMessage message with E-RABModifyInd payload
* @param p_value The procedure code value
*/
template (value) InitiatingMessage m_E_RABModifiedInd(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABModificationIndication,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABModifiedInd
template (value) RecordOf_ProtocolIE m_E_RABModifiedIndIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
@ -389,17 +346,6 @@ module LibS1AP_Templates {
group ERABRelease {
/**
* @desc Send template for InitiatingMessage message with E-RABRelease payload
* @param p_value The protocol information elements.
*/
template (value) InitiatingMessage m_E_RABReleaseRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABRelease,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABRleaseRequest
template (value) RecordOf_ProtocolIE m_E_RABReleaseReqIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
@ -1279,19 +1225,6 @@ module LibS1AP_Templates {
group ERAB_management_group {
group ERABModify{
/**
* @desc Receive template for SuccessfulOutcome/R-RAB_Setup message
* @param p_value The expected protocol information elements. Default: ?
*/
template (present) SuccessfulOutcome mw_E_RABReleaseResponse(
template (present) RecordOf_ProtocolIE p_value := ?
) := {
procedureCode := id_E_RABRelease,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template mw_E_RABResponse
/**
* @desc Receive template for SuccessfulOutcome/R-RAB_Modify request message
* @param p_value The expected protocol information elements. Default: ?
@ -1314,19 +1247,29 @@ module LibS1AP_Templates {
mw_E_RABToBeModifiedList(p_RecordOf_E_RABToBeModifyItem_value)
} // End of template mw_E_RABSetupReqIEs
/**
* @desc Receive template for SuccessfulOutcome/R-RAB_Setup message
* @param p_procedureCode Expected procedure code. Default: ?
* @param p_value Expected procedure code. Default: ?
*/
template (present) SuccessfulOutcome mw_E_RABModifiedResponse(
template (present) RecordOf_ProtocolIE p_value := ?
) := {
procedureCode := id_E_RABModify,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template mw_E_RABResponse
template (present) RecordOf_ProtocolIE mw_E_RABModificationIndicationIEs(
template (present) MME_UE_S1AP_ID p_MME_value := ?,
template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
template RecordOf_E_RABToBeModifiedItemBearerModInd p_RecordOf_E_RABModifyItem_value := omit
) := {
mw_MME_UE_S1AP_ID(p_MME_value, ignore),
mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
mw_E_RABModifiedListModIndIE(p_RecordOf_E_RABModifyItem_value)
}
template (present) E_RABToBeModifiedItemBearerModInd mw_E_RABToBeModifiedItemBearerModInd(
in E_RAB_ID p_e_RAB_ID := 0,
in template (value) TransportLayerAddress p_transportLayerAddress := '0'B,
in template (value) GTP_TEID p_dL_GTP_TEID := '00000000'O
) := {
e_RAB_ID := p_e_RAB_ID,
transportLayerAddress := p_transportLayerAddress,
dL_GTP_TEID := p_dL_GTP_TEID
}
template (present) RecordOf_ProtocolIE mw_E_RABModifiedResIEs(
template (present) MME_UE_S1AP_ID p_MME_value := ?,
template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
@ -1375,20 +1318,6 @@ module LibS1AP_Templates {
mw_E_RABToBeSetupList(p_RecordOf_E_RABToBeSetupItem_value)
} // End of template mw_E_RABSetupReqIEs
/**
* @desc Receive template for SuccessfulOutcome/R-RAB_Setup message
* @param p_procedureCode Expected procedure code. Default: ?
* @param p_value Expected procedure code. Default: ?
*/
template (present) SuccessfulOutcome mw_E_RABSetupResponse(
template (present) RecordOf_ProtocolIE p_value := ?
) := {
procedureCode := id_E_RABSetup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template mw_E_RABSetupResponse
template (present) RecordOf_ProtocolIE mw_E_RABSetupResIEs(
template (present) MME_UE_S1AP_ID p_MME_value := ?,
template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
@ -1437,6 +1366,18 @@ module LibS1AP_Templates {
} // End of template mw_UserLocationInformation
template (present) RecordOf_ProtocolIE mw_E_RABReleaseIndicationIEs(
template (present) MME_UE_S1AP_ID p_MME_value := ?,
template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
template (present) RecordOf_E_RABItem p_RecordOf_E_RABItem_value := ?,
template (present) UserLocationInformation p_UserLocationInformation := ?
) := {
mw_MME_UE_S1AP_ID(p_MME_value, ignore),
mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
mw_E_RABReleaseList(p_RecordOf_E_RABItem_value),
mw_UserLocationInformation_IE(p_UserLocationInformation)
}
/**
* @desc Receive template for UserLocationInformation message
@ -1462,6 +1403,7 @@ module LibS1AP_Templates {
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template mw_E_RABReleaseCommand
template (present) RecordOf_ProtocolIE mw_E_RABReleaseCmdIEs(
template (present) MME_UE_S1AP_ID p_MME_value := ?,
template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
@ -1472,6 +1414,7 @@ module LibS1AP_Templates {
mw_E_RABReleaseList(p_RecordOf_E_RABReleaseListItem_value)
} // End of template mw_E_RABReleaseCmdIEs
/**
* @desc Receive template for InitiatingMessage message with Modification confirm payload
* @param p_value The list of Protocol IE values
@ -1493,6 +1436,7 @@ module LibS1AP_Templates {
mw_E_RABModifyList(p_RecordOf_E_RABModifyListItem_value)
} // End of template mw_E_RABModificationConfirmIEs
}
}
@ -4040,6 +3984,65 @@ module LibS1AP_Templates {
value_ := { RecordOf_E_RABFailedToResumeItemResumeReq := valueof(p_value) }
} // End of template m_E_RABFailedToResumeItemResumeReqList
/**
* @desc Send template for InitiatingMessage message with E-RABSetup response payload
* @param p_value The procedure code value
*/
template (value) InitiatingMessage m_E_RABSetupResponse(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABSetup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABSetupResponse
/**
* @desc Send template for InitiatingMessage message with E-RABModifyInd payload
* @param p_value The procedure code value
*/
template (value) InitiatingMessage m_E_RABModifiedInd(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABModificationIndication,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABModifiedInd
/**
* @desc Send template for InitiatingMessage message with E-RABModify payload
* @param p_value The protocol information elements.
*/
template (value) InitiatingMessage m_E_RABModifiedRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABModify,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABModifiedRequest
/**
* @desc Send template for InitiatingMessage message with E-RABRelease payload
* @param p_value The protocol information elements.
*/
template (value) InitiatingMessage m_E_RABReleaseRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABRelease,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABRleaseRequest
/**
* @desc Send template for InitiatingMessage message with E-RABSetup payload
* @param p_value The protocol information elements.
*/
template (value) InitiatingMessage m_E_RABSetupRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABSetup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABSetupRequest
} // End of group E_RAB_IEsend
/**
@ -5259,7 +5262,70 @@ module LibS1AP_Templates {
value_ := {CSGMembershipInfo := p_value}
} // End of template mw_cSGMembershipInfoIE
template (present) ProtocolIE mw_E_RABModificationIndication_IE(
template (present) RecordOf_ProtocolIE p_value := ?
) := {
id := S1AP_Constants.id_E_RABModificationIndication,
criticality := reject,
value_ := { RecordOf_ProtocolIE :=p_value}
}
template (present) ProtocolIE mw_E_RABModifiedListModIndIE(
template (present) RecordOf_E_RABToBeModifiedItemBearerModInd p_value := ?
) := {
id := S1AP_Constants.id_E_RABToBeModifiedListBearerModInd,
criticality := reject,
value_ := { RecordOf_E_RABToBeModifiedItemBearerModInd := p_value}
}
/**
* @desc Receive template for SuccessfulOutcome/R-RAB_Setup message
* @param p_value The expected protocol information elements. Default: ?
*/
template (present) SuccessfulOutcome mw_E_RABReleaseResponseIE(
template (present) RecordOf_ProtocolIE p_value := ?
) := {
procedureCode := id_E_RABRelease,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template mw_E_RABResponse
/**
* @desc Receive template for SuccessfulOutcome/R-RAB_Setup message
* @param p_procedureCode Expected procedure code. Default: ?
* @param p_value Expected procedure code. Default: ?
*/
template (present) SuccessfulOutcome mw_E_RABModifiedResponse(
template (present) RecordOf_ProtocolIE p_value := ?
) := {
procedureCode := id_E_RABModify,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template mw_E_RABResponse
template (present) ProtocolIE mw_E_RABReleaseIndication_IE(
template (present) RecordOf_ProtocolIE p_value := ?
) := {
id := S1AP_Constants.id_E_RABReleaseIndication,
criticality := ignore,
value_ := { RecordOf_ProtocolIE :=p_value}
}
/**
* @desc Receive template for SuccessfulOutcome/R-RAB_Setup message
* @param p_procedureCode Expected procedure code. Default: ?
* @param p_value Expected procedure code. Default: ?
*/
template (present) SuccessfulOutcome mw_E_RABSetupResponse(
template (present) RecordOf_ProtocolIE p_value := ?
) := {
procedureCode := id_E_RABSetup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template mw_E_RABSetupResponse
} // End of group Receive_IEs
group g_IEParameters {

View File

@ -14,7 +14,7 @@ module S1AP_TCFunctions {
// LibCommon
import from LibCommon_Sync all;
import from LibCommon_VerdictControl all;
import from LibCommon_Time {function f_sleepIgnoreDef};
import from LibCommon_Time {function f_sleepIgnoreDef;}
// LibS1AP
import from S1AP_IEs language "ASN.1:1997" all;
@ -852,7 +852,7 @@ module S1AP_TCFunctions {
if (fx_eNB_erab_Release_indication_procedure(false) == false) {
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
} else {
f_recv_E_RABReleaseResponse(mw_E_RABReleaseResIEs(
f_recv_E_RABReleaseIndication(mw_E_RABReleaseIndicationIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
{
@ -888,7 +888,7 @@ module S1AP_TCFunctions {
if (fx_eNB_erab_Release_indication_procedure(false) == false) {
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
} else {
f_recv_E_RABReleaseResponse(mw_E_RABReleaseResIEs(
f_recv_E_RABReleaseIndication(mw_E_RABReleaseIndicationIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
{
@ -983,7 +983,7 @@ module S1AP_TCFunctions {
}
));
// TODO
f_recv_E_RABReleaseResponse(mw_E_RABReleaseResIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
@ -1000,9 +1000,44 @@ module S1AP_TCFunctions {
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_eNB_RAB_20
} // End of function f_TC_S1AP_eNB_RAB_20
/**
* @desc Testcase function for TC_S1AP_eNB_RAB_21
*/
function f_TC_S1AP_eNB_RAB_21 () runs on S1APComponent {
// Local variables
const E_RAB_ID c_E_RAB_ID_A := 0;
// Preamble
f_S1AP_enb_init();
f_rABSetupRequest();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// 1. to indicate a LPPa Transport procedure using a UE associated signalling
if (fx_eNB_erab_modification_indication_procedure(false) == false) {
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
} else {
f_recv_E_RABModificationIndication(mw_E_RABModificationIndicationIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
{
mw_E_RABToBeModifiedItemBearerModInd(
-
)
}
));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
}
f_postamble_S1AP_eNB();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_eNB_RAB_21
} // End of group ERAB_management_group
/**