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

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">BTS_Tests: generate g_AllChannels from module parameters<br><br>Change-Id: I600aa49768328b89707b4da13d61f6a8089ac351<br>---<br>M bts/BTS_Tests.ttcn<br>1 file changed, 48 insertions(+), 17 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn</span><br><span>index 8895c6b..68503dd 100644</span><br><span>--- a/bts/BTS_Tests.ttcn</span><br><span>+++ b/bts/BTS_Tests.ttcn</span><br><span>@@ -469,25 +469,14 @@</span><br><span> }</span><br><span> </span><br><span> /* global init function */</span><br><span style="color: hsl(0, 100%, 40%);">-friend function f_init() runs on test_CT {</span><br><span style="color: hsl(120, 100%, 40%);">+friend function f_init(uint8_t trx_nr := 0)</span><br><span style="color: hsl(120, 100%, 40%);">+runs on test_CT</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+        var TrxParsItem trx_pars := mp_trx_pars[trx_nr];</span><br><span>     var charstring id := testcasename();</span><br><span style="color: hsl(0, 100%, 40%);">-    g_AllChannels := {</span><br><span style="color: hsl(0, 100%, 40%);">-              /* TS 1..4: TCH/F */</span><br><span style="color: hsl(0, 100%, 40%);">-            valueof(ts_RslChanNr_Bm(1)), valueof(ts_RslChanNr_Bm(2)),</span><br><span style="color: hsl(0, 100%, 40%);">-               valueof(ts_RslChanNr_Bm(3)), valueof(ts_RslChanNr_Bm(4)),</span><br><span style="color: hsl(0, 100%, 40%);">-               /* TS 5: TCH/H */</span><br><span style="color: hsl(0, 100%, 40%);">-               valueof(ts_RslChanNr_Lm(5,0)), valueof(ts_RslChanNr_Lm(5,1)),</span><br><span style="color: hsl(0, 100%, 40%);">-           /* TS 0: SDCCH/4 */</span><br><span style="color: hsl(0, 100%, 40%);">-             valueof(ts_RslChanNr_SDCCH4(0,0)), valueof(ts_RslChanNr_SDCCH4(0,1)),</span><br><span style="color: hsl(0, 100%, 40%);">-           valueof(ts_RslChanNr_SDCCH4(0,2)), valueof(ts_RslChanNr_SDCCH4(0,3)),</span><br><span style="color: hsl(0, 100%, 40%);">-           /* TS 6: SDCCH/8 */</span><br><span style="color: hsl(0, 100%, 40%);">-             valueof(ts_RslChanNr_SDCCH8(6,0)), valueof(ts_RslChanNr_SDCCH8(6,1)),</span><br><span style="color: hsl(0, 100%, 40%);">-           valueof(ts_RslChanNr_SDCCH8(6,2)), valueof(ts_RslChanNr_SDCCH8(6,3)),</span><br><span style="color: hsl(0, 100%, 40%);">-           valueof(ts_RslChanNr_SDCCH8(6,4)), valueof(ts_RslChanNr_SDCCH8(6,5)),</span><br><span style="color: hsl(0, 100%, 40%);">-           valueof(ts_RslChanNr_SDCCH8(6,6)), valueof(ts_RslChanNr_SDCCH8(6,7))</span><br><span style="color: hsl(0, 100%, 40%);">-    };</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  /* FIXME: FACCH/H is unreliable with calypso firmware, see OS#3653 */</span><br><span style="color: hsl(120, 100%, 40%);">+ /* FIXME: FACCH/H is unreliable with calypso firmware, see OS#3653.</span><br><span style="color: hsl(120, 100%, 40%);">+    * TODO: also generate this list dynamically from module parameters. */</span><br><span>      if (mp_bts_trxc_port != -1) {</span><br><span>                g_AllChanTypes := {</span><br><span>                  /* TS 1..4: TCH/F */</span><br><span>@@ -509,6 +498,48 @@</span><br><span>                  valueof(ts_RslChanNr_SDCCH8(6,4))</span><br><span>            };</span><br><span>   }</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+   g_AllChannels := { };</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+       /* Generate list of all logical channels from module parameters */</span><br><span style="color: hsl(120, 100%, 40%);">+    for (var integer tn := 0; tn < lengthof(trx_pars.ts); tn := tn + 1) {</span><br><span style="color: hsl(120, 100%, 40%);">+              select (trx_pars.ts[tn].config) {</span><br><span style="color: hsl(120, 100%, 40%);">+             case (GSM_PCHAN_CCCH_SDCCH4) {</span><br><span style="color: hsl(120, 100%, 40%);">+                        g_AllChannels := g_AllChannels &</span><br><span style="color: hsl(120, 100%, 40%);">+                          { valueof(ts_RslChanNr_SDCCH4(tn, 0)),</span><br><span style="color: hsl(120, 100%, 40%);">+                                  valueof(ts_RslChanNr_SDCCH4(tn, 1)),</span><br><span style="color: hsl(120, 100%, 40%);">+                                  valueof(ts_RslChanNr_SDCCH4(tn, 2)),</span><br><span style="color: hsl(120, 100%, 40%);">+                                  valueof(ts_RslChanNr_SDCCH4(tn, 3)) };</span><br><span style="color: hsl(120, 100%, 40%);">+                      }</span><br><span style="color: hsl(120, 100%, 40%);">+             case (GSM_PCHAN_SDCCH8) {</span><br><span style="color: hsl(120, 100%, 40%);">+                     g_AllChannels := g_AllChannels &</span><br><span style="color: hsl(120, 100%, 40%);">+                          { valueof(ts_RslChanNr_SDCCH8(tn, 0)),</span><br><span style="color: hsl(120, 100%, 40%);">+                                  valueof(ts_RslChanNr_SDCCH8(tn, 1)),</span><br><span style="color: hsl(120, 100%, 40%);">+                                  valueof(ts_RslChanNr_SDCCH8(tn, 2)),</span><br><span style="color: hsl(120, 100%, 40%);">+                                  valueof(ts_RslChanNr_SDCCH8(tn, 3)),</span><br><span style="color: hsl(120, 100%, 40%);">+                                  valueof(ts_RslChanNr_SDCCH8(tn, 4)),</span><br><span style="color: hsl(120, 100%, 40%);">+                                  valueof(ts_RslChanNr_SDCCH8(tn, 5)),</span><br><span style="color: hsl(120, 100%, 40%);">+                                  valueof(ts_RslChanNr_SDCCH8(tn, 6)),</span><br><span style="color: hsl(120, 100%, 40%);">+                                  valueof(ts_RslChanNr_SDCCH8(tn, 7)) };</span><br><span style="color: hsl(120, 100%, 40%);">+                      }</span><br><span style="color: hsl(120, 100%, 40%);">+             case (GSM_PCHAN_TCHH_TCHF_PDCH) {</span><br><span style="color: hsl(120, 100%, 40%);">+                     g_AllChannels := g_AllChannels &</span><br><span style="color: hsl(120, 100%, 40%);">+                          { valueof(ts_RslChanNr_Lm(tn, 0)),</span><br><span style="color: hsl(120, 100%, 40%);">+                              valueof(ts_RslChanNr_Lm(tn, 1)),</span><br><span style="color: hsl(120, 100%, 40%);">+                              valueof(ts_RslChanNr_Bm(tn)) };</span><br><span style="color: hsl(120, 100%, 40%);">+                     }</span><br><span style="color: hsl(120, 100%, 40%);">+             case (GSM_PCHAN_TCHH) {</span><br><span style="color: hsl(120, 100%, 40%);">+                       g_AllChannels := g_AllChannels &</span><br><span style="color: hsl(120, 100%, 40%);">+                          { valueof(ts_RslChanNr_Lm(tn, 0)),</span><br><span style="color: hsl(120, 100%, 40%);">+                              valueof(ts_RslChanNr_Lm(tn, 1)) };</span><br><span style="color: hsl(120, 100%, 40%);">+                  }</span><br><span style="color: hsl(120, 100%, 40%);">+             case (GSM_PCHAN_TCHF, GSM_PCHAN_TCHF_PDCH) {</span><br><span style="color: hsl(120, 100%, 40%);">+                  g_AllChannels := g_AllChannels &</span><br><span style="color: hsl(120, 100%, 40%);">+                          { valueof(ts_RslChanNr_Bm(tn)) };</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>  f_init_rsl(id);</span><br><span>      f_sleep(0.5);   /* workaround for OS#3000 */</span><br><span>         f_init_vty(id);</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/21315">change 21315</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/+/21315"/><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: I600aa49768328b89707b4da13d61f6a8089ac351 </div>
<div style="display:none"> Gerrit-Change-Number: 21315 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </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: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>