<p>fixeria <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/21008">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  pespin: Looks good to me, approved

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">PCU_Tests: add 'f_multi_ms_' API for multi-MS test cases<br><br>Change-Id: Ie2cc717f9f50db16748fe4e4a0ad80d549981e61<br>Related: OS#4838<br>---<br>M pcu/PCU_Tests.ttcn<br>1 file changed, 34 insertions(+), 6 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn</span><br><span>index 5e61d85..44314f3 100644</span><br><span>--- a/pcu/PCU_Tests.ttcn</span><br><span>+++ b/pcu/PCU_Tests.ttcn</span><br><span>@@ -238,6 +238,35 @@</span><br><span>         BTS.receive(tr_RAW_PCU_EV(BTS_EV_SI13_NEGO));</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/* Register TLLI of each allocated GprsMS instance */</span><br><span style="color: hsl(120, 100%, 40%);">+private function f_multi_ms_bssgp_register()</span><br><span style="color: hsl(120, 100%, 40%);">+runs on RAW_PCU_Test_CT {</span><br><span style="color: hsl(120, 100%, 40%);">+        for (var integer i := 0; i < lengthof(g_ms); i := i + 1) {</span><br><span style="color: hsl(120, 100%, 40%);">+         f_bssgp_client_llgmm_assign(TLLI_UNUSED, g_ms[i].tlli);</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%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+/* Allocate [and activate] an Uplink TBF for each allocated GprsMS instance */</span><br><span style="color: hsl(120, 100%, 40%);">+private function f_multi_ms_establish_tbf(boolean do_activate := false)</span><br><span style="color: hsl(120, 100%, 40%);">+runs on RAW_PCU_Test_CT {</span><br><span style="color: hsl(120, 100%, 40%);">+    for (var integer i := 0; i < lengthof(g_ms); i := i + 1) {</span><br><span style="color: hsl(120, 100%, 40%);">+         /* Establish an Uplink TBF */</span><br><span style="color: hsl(120, 100%, 40%);">+         f_ms_establish_ul_tbf(g_ms[i]);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+             /* Send a random block, so this TBF becomes "active" */</span><br><span style="color: hsl(120, 100%, 40%);">+             if (do_activate) {</span><br><span style="color: hsl(120, 100%, 40%);">+                    /* FIXME: use the new APU by Pau to get correct TRX/TS here */</span><br><span style="color: hsl(120, 100%, 40%);">+                        var template TsTrxBtsNum nr := ts_TsTrxBtsNum(7, i mod 8);</span><br><span style="color: hsl(120, 100%, 40%);">+                    var octetstring dummy := f_rnd_octstring(12);</span><br><span style="color: hsl(120, 100%, 40%);">+                 var RlcmacDlBlock dl_block;</span><br><span style="color: hsl(120, 100%, 40%);">+                   var uint32_t poll_fn;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+                       f_ms_tx_ul_data_block(g_ms[i], dummy, with_tlli := true, nr := nr);</span><br><span style="color: hsl(120, 100%, 40%);">+                   f_rx_rlcmac_dl_block_exp_ack_nack(dl_block, poll_fn, nr := nr);</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%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> testcase TC_pcuif_suspend() runs on RAW_PCU_Test_CT {</span><br><span>      var octetstring ra_id := enc_RoutingAreaIdentification(mp_gb_cfg.bvc[0].cell_id.ra_id);</span><br><span>      var GprsTlli tlli := 'FFFFFFFF'O;</span><br><span>@@ -2489,14 +2518,13 @@</span><br><span> </span><br><span>      /* Establish BSSGP connection to the PCU */</span><br><span>  f_bssgp_establish();</span><br><span style="color: hsl(0, 100%, 40%);">-    for (i := 0; i < num_ms; i := i + 1) {</span><br><span style="color: hsl(0, 100%, 40%);">-               f_bssgp_client_llgmm_assign(TLLI_UNUSED, g_ms[i].tlli);</span><br><span style="color: hsl(0, 100%, 40%);">- }</span><br><span style="color: hsl(120, 100%, 40%);">+     f_multi_ms_bssgp_register();</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-        /* Establish an Uplink TBF for each MS. They should be allocated on</span><br><span style="color: hsl(0, 100%, 40%);">-       different TRX in an uniform way. */</span><br><span style="color: hsl(120, 100%, 40%);">+ /* Establish an Uplink TBF for each GprsMS instance */</span><br><span style="color: hsl(120, 100%, 40%);">+        f_multi_ms_establish_tbf(do_activate := false);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+     /* Check if all TBFs are allocated on different TRX in an uniform way */</span><br><span>     for (i := 0; i < num_ms; i := i + 1) {</span><br><span style="color: hsl(0, 100%, 40%);">-               f_ms_establish_ul_tbf(g_ms[i]);</span><br><span>              if (g_ms[i].ul_tbf.arfcn != info_ind.trx.v10[i mod 3].arfcn) {</span><br><span>                       setverdict(fail, "Got assigned ARFCN ", g_ms[i].ul_tbf.arfcn,</span><br><span>                                 " vs exp ", info_ind.trx.v10[i mod 3].arfcn);</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/21008">change 21008</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/+/21008"/><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: Ie2cc717f9f50db16748fe4e4a0ad80d549981e61 </div>
<div style="display:none"> Gerrit-Change-Number: 21008 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>