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

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">bsc: add TC_assignment_codec_amr_startmode_cruft<br><br>Make sure that when a 'start-mode auto' is set, that the previous start<br>mode setting does not linger in the unused bits.<br><br>- after I577ff590d7588fd7e3ee4846c7955ab8f84cf2b1, osmo-bsc sets its<br>  ICMI bit properly, but passes this test only because it *always* sends<br>  smod (start-mode) bits as zero.<br><br>- in I49691df01745a7c485bf165e897872c35fc4b147, the smod bits are<br>  properly sent on RSL, but this test shows that when ICMI becomes zero<br>  for 'start-mode auto', the smod bits will remain whatever start-mode<br>  was set in the previous osmo-bsc config. Instead, osmo-bsc should<br>  clear the smod bits for 'start-mode auto' so that its MultiRate Config<br>  does not vary depending on what was previously configured.<br><br>- in I1ec5bad0bce01cc425ee05ecf70c83ec662a226a, clearing smod is<br>  implemented and this test is expected to pass.<br><br>Change-Id: I151678f64e680f30f35b6bb2b0036d63efde9f2c<br>---<br>M bsc/BSC_Tests.ttcn<br>1 file changed, 37 insertions(+), 0 deletions(-)<br><br></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 251801b..7c12559 100644</span><br><span>--- a/bsc/BSC_Tests.ttcn</span><br><span>+++ b/bsc/BSC_Tests.ttcn</span><br><span>@@ -3711,6 +3711,42 @@</span><br><span>      f_vty_amr_start_mode_restore(false);</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/* 'amr start-mode auto' should not keep the (unused) 'smod' bits from previous configuration */</span><br><span style="color: hsl(120, 100%, 40%);">+testcase TC_assignment_codec_amr_startmode_cruft() runs on test_CT {</span><br><span style="color: hsl(120, 100%, 40%);">+ var TestHdlrParams pars := f_gen_test_hdlr_pars();</span><br><span style="color: hsl(120, 100%, 40%);">+    var MSC_ConnHdlr vc_conn;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+   var RSL_IE_Body mr_conf := {</span><br><span style="color: hsl(120, 100%, 40%);">+          other := {</span><br><span style="color: hsl(120, 100%, 40%);">+                    len := 2,</span><br><span style="color: hsl(120, 100%, 40%);">+                     payload := '2004'O /* <- expect ICMI=0, smod=00 */</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%);">+  pars.ass_codec_list := valueof(ts_BSSMAP_IE_CodecList({ts_CodecAMR_F}));</span><br><span style="color: hsl(120, 100%, 40%);">+      pars.ass_codec_list.codecElements[0].s0_7 := '00000100'B; /* 5,90k */</span><br><span style="color: hsl(120, 100%, 40%);">+ pars.ass_codec_list.codecElements[0].s8_15 := '01010111'B;</span><br><span style="color: hsl(120, 100%, 40%);">+    pars.expect_mr_conf_ie := mr_conf;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+  f_init(1, true);</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%);">+       /* First set nonzero start mode bits */</span><br><span style="color: hsl(120, 100%, 40%);">+       f_vty_amr_start_mode_set(true, "4");</span><br><span style="color: hsl(120, 100%, 40%);">+        /* Now set to auto, and expect the startmode bits to be zero in the message, i.e. ensure that osmo-bsc does not</span><br><span style="color: hsl(120, 100%, 40%);">+        * let the startmode bits stick around and has deterministic MultiRate config for 'start-mode auto'; that is</span><br><span style="color: hsl(120, 100%, 40%);">+   * ensured by above '2004'O, where 'x0xx'O indicates ICMI = 0, spare = 0, smod = 00. */</span><br><span style="color: hsl(120, 100%, 40%);">+       f_vty_amr_start_mode_set(true, "auto");</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+   vc_conn := f_start_handler(refers(f_TC_assignment_codec), pars);</span><br><span style="color: hsl(120, 100%, 40%);">+      vc_conn.done;</span><br><span style="color: hsl(120, 100%, 40%);">+ f_shutdown_helper();</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        /* Clear the startmode bits to not affect subsequent tests, in case the bits should indeed stick around. */</span><br><span style="color: hsl(120, 100%, 40%);">+   f_vty_amr_start_mode_set(true, "1");</span><br><span style="color: hsl(120, 100%, 40%);">+        f_vty_amr_start_mode_restore(true);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> function f_TC_assignment_codec_amr(boolean fr, octetstring mrconf, bitstring s8_s0, bitstring exp_s8_s0,</span><br><span>         charstring start_mode := "1")</span><br><span> runs on test_CT {</span><br><span>@@ -8415,6 +8451,7 @@</span><br><span>                 execute( TC_assignment_codec_amr_h_S7() );</span><br><span>           execute( TC_assignment_codec_amr_f_start_mode_auto() );</span><br><span>              execute( TC_assignment_codec_amr_h_start_mode_auto() );</span><br><span style="color: hsl(120, 100%, 40%);">+               execute( TC_assignment_codec_amr_startmode_cruft() );</span><br><span>        }</span><br><span> </span><br><span>        execute( TC_assignment_codec_fr_exhausted_req_hr() );</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/21373">change 21373</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/+/21373"/><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: I151678f64e680f30f35b6bb2b0036d63efde9f2c </div>
<div style="display:none"> Gerrit-Change-Number: 21373 </div>
<div style="display:none"> Gerrit-PatchSet: 3 </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-Reviewer: neels <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>