+TEST(SubscriptionRequest, MultipleRANParameters)
+{
+ unsigned char buff[1024];
+ size_t buff_size = 1024;
+
+
+ //creating Action Definition
+ HWActionDefinition e2sm_actdefn1;
+ HWActionDefinition::RANParamIEs rparam1;
+
+ rparam1.set_param_id(1);
+ rparam1.set_param_name("ENodeBID");
+ rparam1.set_param_test(1);
+ rparam1.set_param_value("SR123");
+
+ e2sm_actdefn1.add(rparam1);
+
+ HWActionDefinition::RANParamIEs rparam2;
+
+ rparam2.set_param_id(1);
+ rparam2.set_param_name("UEID");
+ rparam2.set_param_test(2);
+ rparam2.set_param_value("UE123");
+
+ e2sm_actdefn1.add(rparam2);
+
+
+ //first Action Object
+
+ E2APAction<HWActionDefinition> actionObj;
+ E2APAction<HWActionDefinition>::ActionIEs ieobj;
+ ieobj.set_ricActionID(1);
+ ieobj.set_ricActionType(1);
+ ieobj.set_ricActionDefinition(e2sm_actdefn1);
+
+ actionObj.add(ieobj);
+
+ HWEventTriggerDefinition eventObj;
+ eventObj.set_triggerNature(0);
+
+ //Now form the subscription.
+
+ E2APSubscriptionRequest<HWEventTriggerDefinition, HWActionDefinition>::SubscriptionRequestIEs infoObj;
+
+ infoObj.set_ranFunctionID(1);
+ infoObj.set_ricInstanceID(1);
+ infoObj.set_ricRequestorID(3);
+ infoObj.set_ricAction_ToBeSetup_List(actionObj);
+ infoObj.set_ricEventTriggerDefinition(eventObj);
+
+
+ E2APSubscriptionRequest<HWEventTriggerDefinition, HWActionDefinition> requestObj(infoObj);
+
+ //Alternate way of implementation
+ //requestObj.add(E2APSubscriptionRequest<HWEventTriggerDefinition, HWActionDefinition>::SubscriptionRequestIEs().set_ranFunctionID(1).set_ricInstanceID(2).set_ricRequestorID(3).set_ricAction_ToBeSetup_List(actionObj));
+
+ bool res = requestObj.encode(buff, &buff_size);
+ ASSERT_TRUE(res);
+}
+
+TEST(SubscriptionRequest, MultipleActions)
+{
+ unsigned char buff[1024];
+ size_t buff_size = 1024;
+
+
+ //creating Action Definition 1
+ HWActionDefinition e2sm_actdefn1;
+ HWActionDefinition::RANParamIEs rparam1;
+
+ rparam1.set_param_id(1);
+ rparam1.set_param_name("ENodeBID");
+ rparam1.set_param_test(1);
+ rparam1.set_param_value("SR123");