diff options
author | Harald Welte <laforge@osmocom.org> | 2020-10-09 12:15:18 +0200 |
---|---|---|
committer | Harald Welte <laforge@osmocom.org> | 2020-10-09 12:27:11 +0200 |
commit | 23e274919d14a37a9c40163219ce230acd2a100f (patch) | |
tree | 42ffa98644f5783488153e5f2a4bddc5d373877c | |
parent | 12d19b81a73634848f36ada2111131035afda26c (diff) |
PCU_Tests_NS: Fix our expectations regarding CellID presence/absence
This is required by the spec, and implemented libosmocore since
Change-Id Ie87820537d6d616da4fd4bbf73eab06e28fda5e1
So let's change our test expectations. Meanwhile, introduce
mp_tolerate_bvc_reset_cellid for working around the bug in 'latest'.
Change-Id: Icebee25b53fef623db6ae91ca0d943e70a3c86b7
-rw-r--r-- | library/RAW_NS.ttcn | 5 | ||||
-rw-r--r-- | pcu/PCU_Tests_NS.ttcn | 11 |
2 files changed, 12 insertions, 4 deletions
diff --git a/library/RAW_NS.ttcn b/library/RAW_NS.ttcn index dca352f2..23530462 100644 --- a/library/RAW_NS.ttcn +++ b/library/RAW_NS.ttcn @@ -162,11 +162,10 @@ runs on RAW_NS_CT { } /* Receive a BSSGP RESET for given BVCI and ACK it */ -altstep as_rx_bvc_reset_tx_ack(BssgpBvci bvci, BssgpCellId cell_id, boolean oneshot := false, integer idx := 0) runs on RAW_NS_CT { +altstep as_rx_bvc_reset_tx_ack(BssgpBvci bvci, template (omit) BssgpCellId cell_id, boolean oneshot := false, integer idx := 0) runs on RAW_NS_CT { var NS_RecvFrom ns_rf; - /* FIXME: nail down received cell_id in match */ [] NSCP[idx].receive(t_NS_RecvFrom(tr_NS_UNITDATA(t_SduCtrlB, 0, - decmatch tr_BVC_RESET(?, bvci, ?)))) + decmatch tr_BVC_RESET(?, bvci, cell_id)))) -> value ns_rf { var PDU_BSSGP bssgp_rx := dec_PDU_BSSGP(ns_rf.msg.pDU_NS_Unitdata.nS_SDU); var PDU_BSSGP bssgp_tx := valueof(ts_BVC_RESET_ACK(bvci, cell_id)); diff --git a/pcu/PCU_Tests_NS.ttcn b/pcu/PCU_Tests_NS.ttcn index 26b81a2e..6a62f292 100644 --- a/pcu/PCU_Tests_NS.ttcn +++ b/pcu/PCU_Tests_NS.ttcn @@ -28,6 +28,11 @@ import from PCUIF_Types all; import from PCUIF_CodecPort all; import from RAW_NS all; +modulepar { + /* tolerate CellID absence/presence in BVC-RESET in violation to spec */ + boolean mp_tolerate_bvc_reset_cellid := false; +} + type component RAW_PCU_CT { /* PCUIF (we emulate the BTS part) */ port PCUIF_CODEC_PT PCU; @@ -188,7 +193,11 @@ testcase TC_ns_full_bringup() runs on RAW_Test_CT { f_outgoing_ns_alive(); /* Expect BVC-RESET for signaling (0) and ptp BVCI */ - as_rx_bvc_reset_tx_ack(0, mp_gb_cfg.cell_id, oneshot := true); + if (mp_tolerate_bvc_reset_cellid) { + as_rx_bvc_reset_tx_ack(0, mp_gb_cfg.cell_id, oneshot := true); + } else { + as_rx_bvc_reset_tx_ack(0, omit, oneshot := true); + } as_rx_bvc_reset_tx_ack(mp_gb_cfg.bvci, mp_gb_cfg.cell_id, oneshot := true); as_rx_bvc_unblock_tx_ack(mp_gb_cfg.bvci, oneshot := true); |