fixeria has uploaded this change for review.

View Change

s1gw: TC_e_rab_setup: complete E-RAB release

The MME originated E-RAB RELEASE procedure includes both:

* [ENB <- MME] E-RAB RELEASE COMMAND, and
* [ENB -> MME] E-RAB RELEASE RESPONSE.

The later was overlooked in a99224c9, so add it.

Change-Id: I856248d825b6ecf0635590b7bf02593cfae893d3
Fixes: a99224c9 "s1gw: TC_e_rab_setup: also test E-RAB release"
---
M s1gw/S1GW_ConnHdlr.ttcn
M s1gw/S1GW_Tests.ttcn
2 files changed, 43 insertions(+), 0 deletions(-)

git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/38/38238/1
diff --git a/s1gw/S1GW_ConnHdlr.ttcn b/s1gw/S1GW_ConnHdlr.ttcn
index a3d2aec..4c88252 100644
--- a/s1gw/S1GW_ConnHdlr.ttcn
+++ b/s1gw/S1GW_ConnHdlr.ttcn
@@ -445,6 +445,40 @@
return pdu;
}

+function f_ConnHdlr_tx_erab_release_rsp(in ERabList erabs,
+ MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID)
+runs on ConnHdlr {
+ var template (value) E_RABReleaseListBearerRelComp items;
+ var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx;
+
+ for (var integer i := 0; i < lengthof(erabs); i := i + 1) {
+ var template (value) E_RABReleaseItemBearerRelComp item;
+
+ item := ts_E_RABReleaseItemBearerRelComp(erabs[i].erab_id);
+ items[i] := ts_E_RABReleaseListBearerRelComp(item)[0];
+ }
+
+ f_ConnHdlr_tx_s1ap_from_enb(ts_S1AP_RABReleaseRsp(mme_ue_id, enb_ue_id, items));
+}
+
+function f_ConnHdlr_rx_erab_release_rsp(in ERabList erabs,
+ MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID)
+runs on ConnHdlr return S1AP_PDU {
+ var template (present) E_RABReleaseListBearerRelComp items;
+ var ENB_UE_S1AP_ID enb_ue_id := g_pars.idx;
+ var S1AP_PDU pdu;
+
+ for (var integer i := 0; i < lengthof(erabs); i := i + 1) {
+ var template (present) E_RABReleaseItemBearerRelComp item;
+
+ item := tr_E_RABReleaseItemBearerRelComp(erabs[i].erab_id);
+ items[i] := tr_E_RABReleaseListBearerRelComp(item)[0];
+ }
+
+ f_ConnHdlr_rx_s1ap_from_enb(pdu, tr_S1AP_RABReleaseRsp(mme_ue_id, enb_ue_id, items));
+ return pdu;
+}
+
function f_ConnHdlr_tx_erab_release_ind(in ERabList erabs,
S1AP_IEs.Cause cause := c_REL_CMD_CAUSE,
MME_UE_S1AP_ID mme_ue_id := c_MME_UE_ID)
@@ -663,6 +697,14 @@
f_ConnHdlr_rx_erab_release_cmd(erabs, cause);
}

+function f_ConnHdlr_erab_release_rsp(inout ERabList erabs)
+runs on ConnHdlr {
+ log("[eNB -> S1GW] -> MME: E-RAB RELEASE RESPONSE");
+ f_ConnHdlr_tx_erab_release_rsp(erabs);
+ log("eNB -> [S1GW -> MME]: E-RAB RELEASE RESPONSE");
+ f_ConnHdlr_rx_erab_release_rsp(erabs);
+}
+
function f_ConnHdlr_erab_release_ind(inout ERabList erabs,
S1AP_IEs.Cause cause := c_REL_CMD_CAUSE)
runs on ConnHdlr {
diff --git a/s1gw/S1GW_Tests.ttcn b/s1gw/S1GW_Tests.ttcn
index 8a259d3..9713c1a 100644
--- a/s1gw/S1GW_Tests.ttcn
+++ b/s1gw/S1GW_Tests.ttcn
@@ -308,6 +308,7 @@
f_ConnHdlr_erab_setup_req(g_pars.erabs);
f_ConnHdlr_erab_setup_rsp(g_pars.erabs);
f_ConnHdlr_erab_release_cmd(g_pars.erabs);
+ f_ConnHdlr_erab_release_rsp(g_pars.erabs);

f_ConnHdlr_s1ap_disconnect();
f_ConnHdlr_s1ap_unregister(g_pars.genb_id);

To view, visit change 38238. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: newchange
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I856248d825b6ecf0635590b7bf02593cfae893d3
Gerrit-Change-Number: 38238
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de>