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

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">handover_test: add 'meas-rep repeat N'<br><br>Some tests want to repeat the same measurement report, typically 10<br>times to fill the averaging window. Instead of 10 lines saying<br>'meas-rep ...', allow 'meas-rep repeat 10 ...'.<br><br>Change-Id: Ib2fa81a449fb73ec7c458b0e6877d6561c79a846<br>---<br>M tests/handover/handover_test.c<br>M tests/handover/test_rxqual.ho_vty<br>M tests/handover/test_rxqual_vs_congestion.ho_vty<br>3 files changed, 42 insertions(+), 50 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/tests/handover/handover_test.c b/tests/handover/handover_test.c</span><br><span>index c0c5bb9..3c9b4ff 100644</span><br><span>--- a/tests/handover/handover_test.c</span><br><span>+++ b/tests/handover/handover_test.c</span><br><span>@@ -841,22 +841,7 @@</span><br><span>       return CMD_SUCCESS;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-DEFUN(meas_rep, meas_rep_cmd,</span><br><span style="color: hsl(0, 100%, 40%);">-      "meas-rep " LCHAN_ARGS " rxlev <0-255> rxqual <0-7> ta <0-255>"</span><br><span style="color: hsl(0, 100%, 40%);">-    " [neighbors] [<0-255>] [<0-255>] [<0-255>] [<0-255>] [<0-255>] [<0-255>]",</span><br><span style="color: hsl(0, 100%, 40%);">-      "Send measurement report\n"</span><br><span style="color: hsl(0, 100%, 40%);">-      LCHAN_ARGS_DOC</span><br><span style="color: hsl(0, 100%, 40%);">-      "rxlev\nrxlev\n"</span><br><span style="color: hsl(0, 100%, 40%);">-      "rxqual\nrxqual\n"</span><br><span style="color: hsl(0, 100%, 40%);">-      "timing advance\ntiming advance\n"</span><br><span style="color: hsl(0, 100%, 40%);">-      "neighbors list of rxlev reported by each neighbor cell\n"</span><br><span style="color: hsl(0, 100%, 40%);">-      "neighbor 0 rxlev\n"</span><br><span style="color: hsl(0, 100%, 40%);">-      "neighbor 1 rxlev\n"</span><br><span style="color: hsl(0, 100%, 40%);">-      "neighbor 2 rxlev\n"</span><br><span style="color: hsl(0, 100%, 40%);">-      "neighbor 3 rxlev\n"</span><br><span style="color: hsl(0, 100%, 40%);">-      "neighbor 4 rxlev\n"</span><br><span style="color: hsl(0, 100%, 40%);">-      "neighbor 5 rxlev\n"</span><br><span style="color: hsl(0, 100%, 40%);">-     )</span><br><span style="color: hsl(120, 100%, 40%);">+static int _meas_rep(struct vty *vty, int argc, const char **argv)</span><br><span> {</span><br><span>        struct gsm_lchan *lc;</span><br><span>        uint8_t rxlev;</span><br><span>@@ -909,6 +894,44 @@</span><br><span>        return CMD_SUCCESS;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+#define MEAS_REP_ARGS  LCHAN_ARGS " rxlev <0-255> rxqual <0-7> ta <0-255>" \</span><br><span style="color: hsl(120, 100%, 40%);">+        " [neighbors] [<0-255>] [<0-255>] [<0-255>] [<0-255>] [<0-255>] [<0-255>]"</span><br><span style="color: hsl(120, 100%, 40%);">+#define MEAS_REP_DOC "Send measurement report\n"</span><br><span style="color: hsl(120, 100%, 40%);">+#define MEAS_REP_ARGS_DOC \</span><br><span style="color: hsl(120, 100%, 40%);">+      LCHAN_ARGS_DOC \</span><br><span style="color: hsl(120, 100%, 40%);">+      "rxlev\nrxlev\n" \</span><br><span style="color: hsl(120, 100%, 40%);">+      "rxqual\nrxqual\n" \</span><br><span style="color: hsl(120, 100%, 40%);">+      "timing advance\ntiming advance\n" \</span><br><span style="color: hsl(120, 100%, 40%);">+      "neighbors list of rxlev reported by each neighbor cell\n" \</span><br><span style="color: hsl(120, 100%, 40%);">+      "neighbor 0 rxlev\n" \</span><br><span style="color: hsl(120, 100%, 40%);">+      "neighbor 1 rxlev\n" \</span><br><span style="color: hsl(120, 100%, 40%);">+      "neighbor 2 rxlev\n" \</span><br><span style="color: hsl(120, 100%, 40%);">+      "neighbor 3 rxlev\n" \</span><br><span style="color: hsl(120, 100%, 40%);">+      "neighbor 4 rxlev\n" \</span><br><span style="color: hsl(120, 100%, 40%);">+      "neighbor 5 rxlev\n"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+DEFUN(meas_rep, meas_rep_cmd,</span><br><span style="color: hsl(120, 100%, 40%);">+      "meas-rep " MEAS_REP_ARGS,</span><br><span style="color: hsl(120, 100%, 40%);">+      MEAS_REP_DOC MEAS_REP_ARGS_DOC)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+  return _meas_rep(vty, argc, argv);</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%);">+DEFUN(meas_rep_repeat, meas_rep_repeat_cmd,</span><br><span style="color: hsl(120, 100%, 40%);">+      "meas-rep repeat <0-999> " MEAS_REP_ARGS,</span><br><span style="color: hsl(120, 100%, 40%);">+      MEAS_REP_DOC</span><br><span style="color: hsl(120, 100%, 40%);">+      "Resend the same measurement report N times\nN\n"</span><br><span style="color: hsl(120, 100%, 40%);">+      MEAS_REP_ARGS_DOC)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+     int count = atoi(argv[0]);</span><br><span style="color: hsl(120, 100%, 40%);">+    argv += 1;</span><br><span style="color: hsl(120, 100%, 40%);">+    argc -= 1;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+  while (count--)</span><br><span style="color: hsl(120, 100%, 40%);">+               _meas_rep(vty, argc, argv);</span><br><span style="color: hsl(120, 100%, 40%);">+   return CMD_SUCCESS;</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> DEFUN(congestion_check, congestion_check_cmd,</span><br><span>       "congestion-check",</span><br><span>       "Trigger a congestion check\n")</span><br><span>@@ -1125,6 +1148,7 @@</span><br><span>  install_element(CONFIG_NODE, &create_bts_cmd);</span><br><span>   install_element(CONFIG_NODE, &create_ms_cmd);</span><br><span>    install_element(CONFIG_NODE, &meas_rep_cmd);</span><br><span style="color: hsl(120, 100%, 40%);">+      install_element(CONFIG_NODE, &meas_rep_repeat_cmd);</span><br><span>      install_element(CONFIG_NODE, &congestion_check_cmd);</span><br><span>     install_element(CONFIG_NODE, &expect_no_chan_cmd);</span><br><span>       install_element(CONFIG_NODE, &expect_chan_cmd);</span><br><span>diff --git a/tests/handover/test_rxqual.ho_vty b/tests/handover/test_rxqual.ho_vty</span><br><span>index 2b80d01..4dc5c24 100644</span><br><span>--- a/tests/handover/test_rxqual.ho_vty</span><br><span>+++ b/tests/handover/test_rxqual.ho_vty</span><br><span>@@ -12,23 +12,7 @@</span><br><span> </span><br><span> create-n-bts 2</span><br><span> set-ts-use trx 0 0 states * TCH/F - - - - - -</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep repeat 9 lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span> expect-no-chan</span><br><span> meas-rep lchan 0 0 1 0 rxlev 40 rxqual 6 ta 0 neighbors 30</span><br><span> expect-ho from lchan 0 0 1 0 to lchan 1 0 1 0</span><br><span>diff --git a/tests/handover/test_rxqual_vs_congestion.ho_vty b/tests/handover/test_rxqual_vs_congestion.ho_vty</span><br><span>index 1e81293..21c4e7e 100644</span><br><span>--- a/tests/handover/test_rxqual_vs_congestion.ho_vty</span><br><span>+++ b/tests/handover/test_rxqual_vs_congestion.ho_vty</span><br><span>@@ -10,23 +10,7 @@</span><br><span>  bts 1</span><br><span>   handover2 min-free-slots tch/f 4</span><br><span>   handover2 min-free-slots tch/h 4</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span style="color: hsl(0, 100%, 40%);">-expect-no-chan</span><br><span style="color: hsl(0, 100%, 40%);">-meas-rep lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep repeat 9 lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span> expect-no-chan</span><br><span> meas-rep lchan 0 0 1 0 rxlev 30 rxqual 6 ta 0 neighbors 40</span><br><span> expect-ho from lchan 0 0 1 0 to lchan 1 0 1 0</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-bsc/+/21972">change 21972</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-bsc/+/21972"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-bsc </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: Ib2fa81a449fb73ec7c458b0e6877d6561c79a846 </div>
<div style="display:none"> Gerrit-Change-Number: 21972 </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-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>