<p>neels has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/26417">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">bsc: properly test various bts.N.chreq:* counters<br><br>Related: SYS#4878<br>Depends: I1fde77d5d5920093ab037184eb3518876804353d (osmo-bsc)<br>Change-Id: I17a7702b151ac03fd9f7ecd6927ef42133aad953<br>---<br>M bsc/BSC_Tests.ttcn<br>1 file changed, 75 insertions(+), 5 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/17/26417/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn</span><br><span>index d54ffac..780e512 100644</span><br><span>--- a/bsc/BSC_Tests.ttcn</span><br><span>+++ b/bsc/BSC_Tests.ttcn</span><br><span>@@ -1279,7 +1279,57 @@</span><br><span>      f_shutdown_helper();</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-/* verify if the "chreq:total" counter increments as expected */</span><br><span style="color: hsl(120, 100%, 40%);">+const CounterNameVals counternames_bts_chreq := {</span><br><span style="color: hsl(120, 100%, 40%);">+    { "chreq:total", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+       { "chreq:attempted_emerg", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+     { "chreq:attempted_call", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      { "chreq:attempted_location_upd", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      { "chreq:attempted_pag", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+       { "chreq:attempted_pdch", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      { "chreq:attempted_other", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+     { "chreq:attempted_unknown", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+   { "chreq:successful", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+  { "chreq:successful_emerg", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+    { "chreq:successful_call", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+     { "chreq:successful_location_upd", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+     { "chreq:successful_pag", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      { "chreq:successful_pdch", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+     { "chreq:successful_other", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+    { "chreq:successful_unknown", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+  { "chreq:no_channel", 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+  { "chreq:max_delay_exceeded", 0 }</span><br><span style="color: hsl(120, 100%, 40%);">+};</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+/* verify the "chreq:*" counters */</span><br><span style="color: hsl(120, 100%, 40%);">+private function f_chan_act_counter(OCT1 ra, charstring chreq_ctr_suffix) runs on test_CT</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+        var GsmFrameNumber fn := 23;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        f_logp(BSCVTY, "f_chan_act_counter(" & chreq_ctr_suffix & ")");</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ var RSL_Message rx_rsl;</span><br><span style="color: hsl(120, 100%, 40%);">+       f_ipa_tx(0, ts_RSL_CHAN_RQD(ra, fn));</span><br><span style="color: hsl(120, 100%, 40%);">+ rx_rsl := f_exp_ipa_rx(0, tr_RSL_MsgTypeD(RSL_MT_CHAN_ACTIV));</span><br><span style="color: hsl(120, 100%, 40%);">+        var RslChannelNr chan_nr := rx_rsl.ies[0].body.chan_nr;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+     f_ctrs_bts_add(0, "chreq:total");</span><br><span style="color: hsl(120, 100%, 40%);">+   f_ctrs_bts_add(0, "chreq:attempted_" & chreq_ctr_suffix);</span><br><span style="color: hsl(120, 100%, 40%);">+       f_ctrs_bts_verify();</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        f_ipa_tx(0, ts_RSL_CHAN_ACT_ACK(chan_nr, fn+10));</span><br><span style="color: hsl(120, 100%, 40%);">+     rx_rsl := f_exp_ipa_rx(0, tr_RSL_IMM_ASSIGN(0));</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    f_ctrs_bts_add(0, "chreq:successful");</span><br><span style="color: hsl(120, 100%, 40%);">+      f_ctrs_bts_add(0, "chreq:successful_" & chreq_ctr_suffix);</span><br><span style="color: hsl(120, 100%, 40%);">+      f_ctrs_bts_verify();</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        /* test is done, release RSL Conn Fail Ind to clean up */</span><br><span style="color: hsl(120, 100%, 40%);">+     f_ipa_tx(0, ts_RSL_CONN_FAIL_IND(chan_nr, RSL_ERR_RADIO_LINK_FAIL));</span><br><span style="color: hsl(120, 100%, 40%);">+  rx_rsl := f_exp_ipa_rx(0, tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL), 10.0);</span><br><span style="color: hsl(120, 100%, 40%);">+ f_ipa_tx(0, ts_RSL_RF_CHAN_REL_ACK(chan_nr));</span><br><span style="color: hsl(120, 100%, 40%);">+ f_sleep(1.0);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> testcase TC_chan_act_counter() runs on test_CT {</span><br><span>       var BSSAP_N_UNITDATA_ind ud_ind;</span><br><span>     var integer chreq_total;</span><br><span>@@ -1287,10 +1337,30 @@</span><br><span> </span><br><span>       f_init(1);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  chreq_total := f_ctrl_get_ratectr_abs(IPA_CTRL, "bts", 0, "chreq:total");</span><br><span style="color: hsl(0, 100%, 40%);">-   IPA_RSL[0].send(ts_ASP_RSL_UD(ts_RSL_CHAN_RQD('23'O, 23)));</span><br><span style="color: hsl(0, 100%, 40%);">-     rsl_unused := f_exp_ipa_rx(0, tr_RSL_MsgTypeD(RSL_MT_CHAN_ACTIV));</span><br><span style="color: hsl(0, 100%, 40%);">-      f_ctrl_get_exp_ratectr_abs(IPA_CTRL, "bts", 0, "chreq:total", chreq_total+1);</span><br><span style="color: hsl(120, 100%, 40%);">+     f_vty_allow_emerg_bts(true, 0);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+     f_ctrs_bts_init(1, counternames_bts_chreq);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ /* emergency call: RA & 0xe0 == 0xa0 --> CHREQ_T_EMERG_CALL */</span><br><span style="color: hsl(120, 100%, 40%);">+ f_chan_act_counter('a3'O, "emerg");</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+       /* voice TCH/H: RA & 0xf0 == 0x40 --> CHREQ_T_VOICE_CALL_TCH_H */</span><br><span style="color: hsl(120, 100%, 40%);">+      f_chan_act_counter('43'O, "call");</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        /* LU: RA & 0xf0 == 0x00 --> CHREQ_T_LOCATION_UPD */</span><br><span style="color: hsl(120, 100%, 40%);">+   f_chan_act_counter('03'O, "location_upd");</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        /* Paging: RA & 0xf0 == 0x20 --> CHREQ_T_PAG_R_TCH_F */</span><br><span style="color: hsl(120, 100%, 40%);">+        f_chan_act_counter('23'O, "pag");</span><br><span style="color: hsl(120, 100%, 40%);">+   /* Paging: RA & 0xf0 == 0x30 --> CHREQ_T_PAG_R_TCH_FH */</span><br><span style="color: hsl(120, 100%, 40%);">+       f_chan_act_counter('33'O, "pag");</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ /* LU: RA & 0xfc == 0x78 --> CHREQ_T_PDCH_TWO_PHASE */</span><br><span style="color: hsl(120, 100%, 40%);">+ /* no PCU, so PDCH not allowed. Skip this test for now. */</span><br><span style="color: hsl(120, 100%, 40%);">+    /* f_chan_act_counter('7b'O, "pdch"); */</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+  /* LU: RA & 0xf0 == 0x10 --> CHREQ_T_SDCCH */</span><br><span style="color: hsl(120, 100%, 40%);">+  f_chan_act_counter('13'O, "other");</span><br><span> </span><br><span>    f_shutdown_helper();</span><br><span> }</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/26417">change 26417</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/26417"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-ttcn3-hacks </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I17a7702b151ac03fd9f7ecd6927ef42133aad953 </div>
<div style="display:none"> Gerrit-Change-Number: 26417 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: neels <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>