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

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">bts-oml: Verify BTS obj becomes Enabled durig OPSTART ACK<br><br>Change-Id: Iabe2677a458e169e646eb5a105ec9897c48eecc4<br>---<br>M bts/BTS_Tests_OML.ttcn<br>M library/AbisOML_Types.ttcn<br>2 files changed, 29 insertions(+), 5 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/bts/BTS_Tests_OML.ttcn b/bts/BTS_Tests_OML.ttcn</span><br><span>index dc1b7ce..396ed38 100644</span><br><span>--- a/bts/BTS_Tests_OML.ttcn</span><br><span>+++ b/bts/BTS_Tests_OML.ttcn</span><br><span>@@ -113,11 +113,33 @@</span><br><span> /* Perform an "OPSTART" procedure with the speciifed MO" */</span><br><span> private function f_oml_opstart(template (value) OML_FOM_ObjectClass obj_class,</span><br><span>                              template (value) OML_FOM_ObjectInstance obj_inst,</span><br><span style="color: hsl(0, 100%, 40%);">-                               boolean exp_fail := false)</span><br><span style="color: hsl(120, 100%, 40%);">+                            boolean exp_fail := false,</span><br><span style="color: hsl(120, 100%, 40%);">+                            template OML_FOM_OperationalState exp_stchg := ?)</span><br><span> runs on BSC_OML_CT {</span><br><span style="color: hsl(120, 100%, 40%);">+     var boolean check_stchg := not istemplatekind(exp_stchg, "?");</span><br><span style="color: hsl(120, 100%, 40%);">+      var boolean ack_received := false;</span><br><span style="color: hsl(120, 100%, 40%);">+    var boolean stchg_received := not check_stchg;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>     OML.send(ts_OML_Opstart(obj_class, obj_inst));</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>     alt {</span><br><span style="color: hsl(120, 100%, 40%);">+ [check_stchg] OML.receive(tr_OML_StateChgEvtRep(obj_class, obj_inst,</span><br><span style="color: hsl(120, 100%, 40%);">+                                                      exp_stchg, NM_AVSTATE_OK)) {</span><br><span style="color: hsl(120, 100%, 40%);">+              stchg_received := true;</span><br><span style="color: hsl(120, 100%, 40%);">+               if (not ack_received) {</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%);">+             setverdict(pass);</span><br><span style="color: hsl(120, 100%, 40%);">+             }</span><br><span style="color: hsl(120, 100%, 40%);">+     [check_stchg] OML.receive(tr_OML_StateChgEvtRep(obj_class, obj_inst,</span><br><span style="color: hsl(120, 100%, 40%);">+                                                      ?, NM_AVSTATE_OK)) {</span><br><span style="color: hsl(120, 100%, 40%);">+              setverdict(fail, "Unexpected State Change for ", obj_class, " ", obj_inst);</span><br><span style="color: hsl(120, 100%, 40%);">+               }</span><br><span>    [not exp_fail] OML.receive(tr_OML_OpstartACK(obj_class, obj_inst)) {</span><br><span style="color: hsl(120, 100%, 40%);">+          ack_received := true;</span><br><span style="color: hsl(120, 100%, 40%);">+         if (not stchg_received) {</span><br><span style="color: hsl(120, 100%, 40%);">+                     repeat;</span><br><span style="color: hsl(120, 100%, 40%);">+               }</span><br><span>            setverdict(pass);</span><br><span>            }</span><br><span>    [not exp_fail] OML.receive(tr_OML_OpstartNACK(obj_class, obj_inst)) {</span><br><span>@@ -515,7 +537,7 @@</span><br><span>  }</span><br><span> </span><br><span>        f_oml_bts_attr();</span><br><span style="color: hsl(0, 100%, 40%);">-       f_oml_opstart(obj_class, obj_inst);</span><br><span style="color: hsl(120, 100%, 40%);">+   f_oml_opstart(obj_class, obj_inst, false, NM_OPSTATE_ENABLED);</span><br><span> }</span><br><span> </span><br><span> </span><br><span>diff --git a/library/AbisOML_Types.ttcn b/library/AbisOML_Types.ttcn</span><br><span>index c4fd81c..0a562ae 100644</span><br><span>--- a/library/AbisOML_Types.ttcn</span><br><span>+++ b/library/AbisOML_Types.ttcn</span><br><span>@@ -100,7 +100,7 @@</span><br><span>       NM_MT_DISC_TERR_TRAF            ('2d'H),</span><br><span>     NM_MT_DISC_TERR_TRAF_ACK        ('2e'H),</span><br><span>     NM_MT_DISC_TERR_TRAF_NACK       ('2f'H),</span><br><span style="color: hsl(0, 100%, 40%);">-        /* Transmission Management Messages */  </span><br><span style="color: hsl(120, 100%, 40%);">+      /* Transmission Management Messages */</span><br><span>       NM_MT_CONN_MDROP_LINK           ('31'H),</span><br><span>     NM_MT_CONN_MDROP_LINK_ACK       ('32'H),</span><br><span>     NM_MT_CONN_MDROP_LINK_NACK      ('33'H),</span><br><span>@@ -884,10 +884,12 @@</span><br><span> template OML_PDU tr_OML_StateChgEvtRep(template OML_FOM_ObjectClass obj_class,</span><br><span>                                  template OML_FOM_ObjectInstance obj_inst,</span><br><span>                                    template OML_FOM_OperationalState opstate := ?,</span><br><span style="color: hsl(0, 100%, 40%);">-                                 template OML_FOM_AvailabilityStatus avstate := ?) :=</span><br><span style="color: hsl(120, 100%, 40%);">+                                  template OML_FOM_AvailabilityStatus avstate := ?,</span><br><span style="color: hsl(120, 100%, 40%);">+                                     template OML_FOM_AdministrativeState admstate := ?) :=</span><br><span>        tr_OML_MsgType(NM_MT_STATECHG_EVENT_REP, obj_class, obj_inst, {</span><br><span>                      tr_OML_IE(NM_ATT_OPER_STATE, OML_FOM_IE_Body:{opstate := opstate}),</span><br><span style="color: hsl(0, 100%, 40%);">-                     tr_OML_IE(NM_ATT_AVAIL_STATUS, OML_FOM_IE_Body:{avail_status := {len := 1, avail_status := avstate}})</span><br><span style="color: hsl(120, 100%, 40%);">+                 tr_OML_IE(NM_ATT_AVAIL_STATUS, OML_FOM_IE_Body:{avail_status := {len := 1, avail_status := avstate}}),</span><br><span style="color: hsl(120, 100%, 40%);">+                        tr_OML_IE(NM_ATT_ADM_STATE, OML_FOM_IE_Body:{adm_state := admstate})</span><br><span>                         });</span><br><span> </span><br><span> /* 8.8.2 Failure Event Report */</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/20681">change 20681</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/+/20681"/><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: Iabe2677a458e169e646eb5a105ec9897c48eecc4 </div>
<div style="display:none"> Gerrit-Change-Number: 20681 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: daniel <dwillmann@sysmocom.de> </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-MessageType: merged </div>