bsc: Increase test coverage for CBSP emergency broadcasts
This adds new tests:
* TC_cbsp_emerg_write_bts_cgi_noreplace
* TC_cbsp_emerg_write_bts_cgi_replace
* TC_cbsp_emerg_write_bts_cgi_kill
All of the above relate to improved / fixed handling of emergency
broadcasts in some corner cases.
Related: SYS#5906
Related: OS#5539, OS#5540
Change-Id: Ic0f0b3d620f3ca73bab3d45997d0c1b9433ac1f7
diff --git a/library/CBSP_Templates.ttcn b/library/CBSP_Templates.ttcn
index 17d933a..d166bcf 100644
--- a/library/CBSP_Templates.ttcn
+++ b/library/CBSP_Templates.ttcn
@@ -314,7 +314,6 @@
template (value) BSSMAP_FIELD_CellIdentificationList cell_list,
template (value) uint8_t emerg_ind,
template (value) uint16_t warn_type,
- template (value) uint16_t num_bcast_req,
template (value) uint8_t warn_per
) :=
ts_CBSP(CBSP_MSGT_WRITE_REPLACE, {
@@ -331,7 +330,6 @@
template BSSMAP_FIELD_CellIdentificationList cell_list := ?,
template uint8_t emerg_ind := ?,
template uint16_t warn_type := ?,
- template uint16_t num_bcast_req := ?,
template uint8_t warn_per := ?
) :=
tr_CBSP(CBSP_MSGT_WRITE_REPLACE, {
@@ -541,15 +539,21 @@
}
/* 8.1.3.4 KILL */
-template (value) CBSP_PDU ts_CBSP_KILL(template (value) uint16_t msg_id,
- template (value) uint16_t old_ser_nr,
- template (value) BSSMAP_FIELD_CellIdentificationList cell_list,
- template (omit) uint8_t channel_ind) :=
- ts_CBSP(CBSP_MSGT_KILL, {
- ts_CbspMsgId(msg_id),
- ts_OldSerNo(old_ser_nr),
- ts_CbspCellList(cell_list),
- ts_CbspChannelInd(channel_ind)});
+function ts_CBSP_KILL(template (value) uint16_t msg_id,
+ template (value) uint16_t old_ser_nr,
+ template (value) BSSMAP_FIELD_CellIdentificationList cell_list,
+ template (omit) uint8_t channel_ind)
+return template (value) CBSP_PDU {
+ var template (value) CBSP_IEs ies := {
+ ts_CbspMsgId(msg_id),
+ ts_OldSerNo(old_ser_nr),
+ ts_CbspCellList(cell_list)
+ };
+ if (not istemplatekind(channel_ind, "omit")) {
+ ies[lengthof(ies)] := ts_CbspChannelInd(channel_ind);
+ }
+ return ts_CBSP(CBSP_MSGT_KILL, ies);
+}
function tr_CBSP_KILL(template uint16_t msg_id := ?, template uint16_t old_ser_nr := ?,
template BSSMAP_FIELD_CellIdentificationList cell_list := ?,
template uint8_t channel_ind := ?)