bts-oml: Verify BTS obj becomes Enabled durig OPSTART ACK
Change-Id: Iabe2677a458e169e646eb5a105ec9897c48eecc4
diff --git a/bts/BTS_Tests_OML.ttcn b/bts/BTS_Tests_OML.ttcn
index dc1b7ce..396ed38 100644
--- a/bts/BTS_Tests_OML.ttcn
+++ b/bts/BTS_Tests_OML.ttcn
@@ -113,11 +113,33 @@
/* Perform an "OPSTART" procedure with the speciifed MO" */
private function f_oml_opstart(template (value) OML_FOM_ObjectClass obj_class,
template (value) OML_FOM_ObjectInstance obj_inst,
- boolean exp_fail := false)
+ boolean exp_fail := false,
+ template OML_FOM_OperationalState exp_stchg := ?)
runs on BSC_OML_CT {
+ var boolean check_stchg := not istemplatekind(exp_stchg, "?");
+ var boolean ack_received := false;
+ var boolean stchg_received := not check_stchg;
+
OML.send(ts_OML_Opstart(obj_class, obj_inst));
+
alt {
+ [check_stchg] OML.receive(tr_OML_StateChgEvtRep(obj_class, obj_inst,
+ exp_stchg, NM_AVSTATE_OK)) {
+ stchg_received := true;
+ if (not ack_received) {
+ repeat;
+ }
+ setverdict(pass);
+ }
+ [check_stchg] OML.receive(tr_OML_StateChgEvtRep(obj_class, obj_inst,
+ ?, NM_AVSTATE_OK)) {
+ setverdict(fail, "Unexpected State Change for ", obj_class, " ", obj_inst);
+ }
[not exp_fail] OML.receive(tr_OML_OpstartACK(obj_class, obj_inst)) {
+ ack_received := true;
+ if (not stchg_received) {
+ repeat;
+ }
setverdict(pass);
}
[not exp_fail] OML.receive(tr_OML_OpstartNACK(obj_class, obj_inst)) {
@@ -515,7 +537,7 @@
}
f_oml_bts_attr();
- f_oml_opstart(obj_class, obj_inst);
+ f_oml_opstart(obj_class, obj_inst, false, NM_OPSTATE_ENABLED);
}