+ //---------------------------------
+ // xapp activity: Send Subs Del Req
+ //---------------------------------
+ select {
+ case <-time.After(2 * time.Second):
+ xapp.Logger.Info("(xappConn) Send Subs Del Req")
+ req := createSubsDelReq(uint32(e2SubsId))
+ e2SubsDelReq.Set(req)
+ xapp.Logger.Debug("%s", e2SubsDelReq.String())
+ err, packedMsg := e2SubsDelReq.Pack(nil)
+ if err != nil {
+ testError(t, "(xappConn) pack NOK %s", err.Error())
+ }
+
+ params := &xapp.RMRParams{}
+ params.Mtype = xapp.RIC_SUB_DEL_REQ
+ params.SubId = e2SubsId
+ params.Payload = packedMsg.Buf
+ params.Meid = &xapp.RMRMeid{RanName: "RAN_NAME_1"}
+ params.Xid = "XID_1"
+ params.Mbuf = nil
+
+ snderr := xappConn.RmrSend(params)
+ if snderr != nil {
+ testError(t, "(xappConn) RMR SEND FAILED: %s", snderr.Error())
+ }
+ }
+
+ //---------------------------------
+ // e2term activity: Recv Subs Del Req & Send Subs Del Resp
+ //---------------------------------
+ select {
+ case msg := <-e2termConn.rmrConChan:
+ if msg.Mtype != xapp.RICMessageTypes["RIC_SUB_DEL_REQ"] {
+ testError(t, "(e2termConn) Received non RIC_SUB_DEL_REQ message")
+ } else {
+ xapp.Logger.Info("(e2termConn) Recv Subs Del Req & Send Subs Del Resp")
+
+ packedData := &packer.PackedData{}
+ packedData.Buf = msg.Payload
+ unpackerr := e2SubsDelReq.UnPack(packedData)
+ if unpackerr != nil {
+ testError(t, "(e2termConn) RIC_SUB_DEL_REQ unpack failed err: %s", unpackerr.Error())
+ }
+ geterr, req := e2SubsDelReq.Get()
+ if geterr != nil {
+ testError(t, "(e2termConn) RIC_SUB_DEL_REQ get failed err: %s", geterr.Error())
+ }
+
+ resp := createSubsDelResp(req)
+ e2SubsDelResp.Set(resp)
+ xapp.Logger.Debug("%s", e2SubsDelResp.String())
+ packerr, packedMsg := e2SubsDelResp.Pack(nil)
+ if packerr != nil {
+ testError(t, "(e2termConn) pack NOK %s", packerr.Error())
+ }
+
+ params := &xapp.RMRParams{}
+ params.Mtype = xapp.RIC_SUB_DEL_RESP
+ params.SubId = msg.SubId
+ params.Payload = packedMsg.Buf
+ params.Meid = msg.Meid
+ params.Xid = msg.Xid
+ params.Mbuf = nil
+
+ snderr := e2termConn.RmrSend(params)
+ if snderr != nil {
+ testError(t, "(e2termConn) RMR SEND FAILED: %s", snderr.Error())
+ }
+
+ }
+ case <-time.After(15 * time.Second):
+ testError(t, "(e2termConn) Not Received RIC_SUB_DEL_REQ within 15 secs")
+ }
+
+ //---------------------------------
+ // xapp activity: Recv Subs Del Resp
+ //---------------------------------
+ select {
+ case msg := <-xappConn.rmrConChan:
+ if msg.Mtype != xapp.RICMessageTypes["RIC_SUB_DEL_RESP"] {
+ testError(t, "(xappConn) Received non RIC_SUB_DEL_RESP message")
+ } else {
+ xapp.Logger.Info("(xappConn) Recv Subs Del Resp")
+
+ packedData := &packer.PackedData{}
+ packedData.Buf = msg.Payload
+ unpackerr := e2SubsDelResp.UnPack(packedData)
+ if unpackerr != nil {
+ testError(t, "(xappConn) RIC_SUB_DEL_RESP unpack failed err: %s", unpackerr.Error())
+ }
+ geterr, _ := e2SubsDelResp.Get()
+ if geterr != nil {
+ testError(t, "(xappConn) RIC_SUB_DEL_RESP get failed err: %s", geterr.Error())
+ }
+
+ }
+ case <-time.After(15 * time.Second):
+ testError(t, "(xappConn) Not Received RIC_SUB_DEL_RESP within 15 secs")
+ }
+