<p>fixeria has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/24717">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">BTS: add a testcase for PDCH interference reports<br><br>Change-Id: I39e70524ad3d2ee51b537c8f786b7754a02949b1<br>Related: SYS#5313, OS#1569, OS#1866<br>---<br>M bts/BTS_Tests.ttcn<br>1 file changed, 56 insertions(+), 0 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/24717/1</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 c9553a3..e855405 100644</span><br><span>--- a/bts/BTS_Tests.ttcn</span><br><span>+++ b/bts/BTS_Tests.ttcn</span><br><span>@@ -5838,6 +5838,61 @@</span><br><span>         setverdict(pass);</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/* Verify periodic interference reports on PDCH */</span><br><span style="color: hsl(120, 100%, 40%);">+testcase TC_pcu_interf_ind() runs on test_CT {</span><br><span style="color: hsl(120, 100%, 40%);">+        var template PCUIF_Message tr_interf_ind;</span><br><span style="color: hsl(120, 100%, 40%);">+     var template PCUIF_interf ts_interf;</span><br><span style="color: hsl(120, 100%, 40%);">+  var integer interf_ind_num := 0;</span><br><span style="color: hsl(120, 100%, 40%);">+      var PCUIF_send_data sd;</span><br><span style="color: hsl(120, 100%, 40%);">+       timer T;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    f_init_with_pcuif();</span><br><span style="color: hsl(120, 100%, 40%);">+  f_TC_pcu_act_req(0, 0, 7, true);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    /* We need trxcon for NOPE indications */</span><br><span style="color: hsl(120, 100%, 40%);">+     f_init_l1ctl();</span><br><span style="color: hsl(120, 100%, 40%);">+       f_l1_tune(L1CTL);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+   /* Expect -120 .. -90 dBm on TS7 of BTS0/TRX0 */</span><br><span style="color: hsl(120, 100%, 40%);">+      ts_interf := { 0, 0, 0, 0, 0, 0, 0, (90..120) };</span><br><span style="color: hsl(120, 100%, 40%);">+      tr_interf_ind := tr_PCUIF_INTERF_IND(</span><br><span style="color: hsl(120, 100%, 40%);">+         bts_nr := 0,</span><br><span style="color: hsl(120, 100%, 40%);">+          trx_nr := 0,</span><br><span style="color: hsl(120, 100%, 40%);">+          fn := ?,</span><br><span style="color: hsl(120, 100%, 40%);">+              interf := ts_interf</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%);">+  /* 4 SACCH periods => 4 reports (plus some guard time) */</span><br><span style="color: hsl(120, 100%, 40%);">+  var float Tval := int2float(4 * 480) / 1000.0 + 0.5;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        /* Let it some time to stabilize */</span><br><span style="color: hsl(120, 100%, 40%);">+   f_sleep(0.5);</span><br><span style="color: hsl(120, 100%, 40%);">+ PCU.clear;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+  T.start(Tval);</span><br><span style="color: hsl(120, 100%, 40%);">+        alt {</span><br><span style="color: hsl(120, 100%, 40%);">+ [] PCU.receive(t_SD_PCUIF(g_pcu_conn_id, tr_interf_ind)) -> value sd {</span><br><span style="color: hsl(120, 100%, 40%);">+             /* Check TDMA frame number period */</span><br><span style="color: hsl(120, 100%, 40%);">+          if (sd.data.u.interf_ind.fn mod 104 != 0) {</span><br><span style="color: hsl(120, 100%, 40%);">+                   setverdict(fail, "Odd TDMA frame number := ",</span><br><span style="color: hsl(120, 100%, 40%);">+                                  sd.data.u.interf_ind.fn);</span><br><span style="color: hsl(120, 100%, 40%);">+          }</span><br><span style="color: hsl(120, 100%, 40%);">+             interf_ind_num := interf_ind_num + 1;</span><br><span style="color: hsl(120, 100%, 40%);">+         if (interf_ind_num < 4)</span><br><span style="color: hsl(120, 100%, 40%);">+                    { repeat; }</span><br><span style="color: hsl(120, 100%, 40%);">+           }</span><br><span style="color: hsl(120, 100%, 40%);">+     [] PCU.receive(t_SD_PCUIF(g_pcu_conn_id, tr_PCUIF_INTERF_IND(0, 0))) -> value sd {</span><br><span style="color: hsl(120, 100%, 40%);">+         setverdict(fail, "Received unexpected interference report: ", sd.data);</span><br><span style="color: hsl(120, 100%, 40%);">+             }</span><br><span style="color: hsl(120, 100%, 40%);">+     [] PCU.receive { repeat; }</span><br><span style="color: hsl(120, 100%, 40%);">+    [] T.timeout {</span><br><span style="color: hsl(120, 100%, 40%);">+                setverdict(fail, "Timeout waiting for interference reports");</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%);">+   Misc_Helpers.f_shutdown(__BFILE__, __LINE__);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> /***********************************************************************</span><br><span>  * Osmocom Style Dynamic Timeslot Support</span><br><span>  ***********************************************************************/</span><br><span>@@ -7492,6 +7547,7 @@</span><br><span>             execute( TC_pcu_socket_nsvc_ipv4() );</span><br><span>                execute( TC_pcu_socket_nsvc_ipv6() );</span><br><span>                execute( TC_pcu_socket_two_nsvc() );</span><br><span style="color: hsl(120, 100%, 40%);">+          execute( TC_pcu_interf_ind() );</span><br><span>      } else {</span><br><span>             log("PCU socket path not available, skipping PCU tests");</span><br><span>  }</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/24717">change 24717</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/+/24717"/><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: I39e70524ad3d2ee51b537c8f786b7754a02949b1 </div>
<div style="display:none"> Gerrit-Change-Number: 24717 </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-MessageType: newchange </div>