X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=E2Manager%2FrmrCgo%2FrmrCgoApi_test.go;h=5d226a8ac9c6c61a601c99cc3f0c2553c5c9a091;hb=refs%2Fchanges%2F01%2F2101%2F1;hp=f675b5a2bfd99096cc6da31804de4d4cb24d87dc;hpb=b6c5a882f986ed2d6440cf9be83d69740179c53d;p=ric-plt%2Fe2mgr.git diff --git a/E2Manager/rmrCgo/rmrCgoApi_test.go b/E2Manager/rmrCgo/rmrCgoApi_test.go index f675b5a..5d226a8 100644 --- a/E2Manager/rmrCgo/rmrCgoApi_test.go +++ b/E2Manager/rmrCgo/rmrCgoApi_test.go @@ -18,46 +18,36 @@ // platform project (RICP). -package rmrCgo +package rmrCgo_test import ( + "bytes" "e2mgr/logger" + "e2mgr/rmrCgo" "e2mgr/tests" - "bytes" "encoding/json" "github.com/stretchr/testify/assert" "io/ioutil" "testing" - "time" ) var ( - log *logger.Logger - msgr *RmrMessenger + log *logger.Logger + msgr rmrCgo.RmrMessenger ) -func TestLogger(t *testing.T){ - var err error - log, err = logger.InitLogger(logger.DebugLevel) - if err != nil { - t.Errorf("#rmrCgoApi_test.TestLogger - failed to initialize logger, error: %s", err) - } - data := map[string]interface{}{"messageType": 1001, "ranIp":"10.0.0.3", "ranPort": 879, "ranName":"test1"} +func TestLogger(t *testing.T) { + log := initLog(t) + data := map[string]interface{}{"messageType": 1001, "ranIp": "10.0.0.3", "ranPort": 879, "ranName": "test1"} b := new(bytes.Buffer) _ = json.NewEncoder(b).Encode(data) req := tests.GetHttpRequest() boo, _ := ioutil.ReadAll(req.Body) - log.Debugf("#rmrCgoApi_test.TestLogger - request header: %v\n; request body: %s\n", req.Header, string(boo)) + log.Debugf("#rmr_c_go_api_test.TestLogger - request header: %v\n; request body: %s\n", req.Header, string(boo)) } - func TestNewMBufSuccess(t *testing.T) { - var err error - log, err = logger.InitLogger(logger.DebugLevel) - if err != nil { - t.Errorf("#rmrCgoApi_test.TestNewMBufSuccess - failed to initialize logger, error: %s", err) - } - msg := NewMBuf(tests.MessageType, len(tests.DummyPayload),"RanName", &tests.DummyPayload, &tests.DummyXAction) + msg := rmrCgo.NewMBuf(tests.MessageType, len(tests.DummyPayload), "RanName", &tests.DummyPayload, &tests.DummyXAction) assert.NotNil(t, msg) assert.NotEmpty(t, msg.Payload) assert.NotEmpty(t, msg.XAction) @@ -66,80 +56,81 @@ func TestNewMBufSuccess(t *testing.T) { assert.Equal(t, msg.Len, len(tests.DummyPayload)) } -func TestInitFailure(t *testing.T) { - var err error - log, err = logger.InitLogger(logger.DebugLevel) - if err != nil { - t.Errorf("#rmrCgoApi_test.TestInitFailure - failed to initialize logger, error: %s", err) +/*func TestIsReadySuccess(t *testing.T) { + log := initLog(t) + + initRmr(tests.GetPort(), tests.MaxMsgSize, tests.Flags, log) + if msgr == nil || !msgr.IsReady() { + t.Errorf("#rmr_c_go_api_test.TestIsReadySuccess - The rmr router is not ready") } - go initRmr(tests.GetPort(), tests.MaxMsgSize, tests.Flags, log) - time.Sleep(time.Second) - if msgr != nil { - t.Errorf("The rmr router is ready, should be not ready") + msgr.Close() +} +func TestSendRecvMsgSuccess(t *testing.T) { + log := initLog(t) + + initRmr(tests.GetPort(), tests.MaxMsgSize, tests.Flags, log) + if msgr == nil || !msgr.IsReady() { + t.Errorf("#rmr_c_go_api_test.TestSendRecvMsgSuccess - The rmr router is not ready") + } + msg := rmrCgo.NewMBuf(1, tests.MaxMsgSize, "test 1", &tests.DummyPayload, &tests.DummyXAction) + log.Debugf("#rmr_c_go_api_test.TestSendRecvMsgSuccess - Going to send the message: %#v\n", msg) + result, err := msgr.SendMsg(msg, true) + + assert.Nil(t, err) + assert.NotNil(t, result) + + msgR, err := msgr.RecvMsg() + + assert.Nil(t, err) + assert.NotNil(t, msgR) + msgr.Close() +} + +func TestSendMsgRmrInvalidMsgNumError(t *testing.T) { + log := initLog(t) + + initRmr(tests.GetPort(), tests.MaxMsgSize, tests.Flags, log) + if msgr == nil || !msgr.IsReady() { + t.Errorf("#rmr_c_go_api_test.TestSendMsgRmrInvalidMsgNumError - The rmr router is not ready") } + + msg := rmrCgo.NewMBuf(10, tests.MaxMsgSize, "test 1", &tests.DummyPayload, &tests.DummyXAction) + log.Debugf("#rmr_c_go_api_test.TestSendMsgRmrInvalidMsgNumError - Going to send the message: %#v\n", msg) + result, err := msgr.SendMsg(msg, true) + + assert.NotNil(t, err) + assert.Nil(t, result) + + msgr.Close() } -//func TestInitSuccess(t *testing.T) { -// var err error -// log, err = logger.InitLogger(true) -// if err != nil { -// t.Errorf("#rmrCgoApi_test.TestInitSuccess - failed to initialize logger, error: %s", err) -// } -// go initRmr(tests.GetPort(), tests.MaxMsgSize, tests.Flags, log) -// time.Sleep(time.Second) -// if msgr == nil { -// t.Errorf("The rmr router is not ready, should be ready") -// } -//} - -func TestIsReadyFailure(t *testing.T) { - var err error - log, err = logger.InitLogger(logger.InfoLevel) - if err != nil { - t.Errorf("#rmrCgoApi_test.TestIsReadyFailure - failed to initialize logger, error: %s", err) +func TestSendMsgRmrInvalidPortError(t *testing.T) { + log := initLog(t) + + initRmr("tcp:"+strconv.Itoa(5555), tests.MaxMsgSize, tests.Flags, log) + if msgr == nil || !msgr.IsReady() { + t.Errorf("#rmr_c_go_api_test.TestSendMsgRmrInvalidPortError - The rmr router is not ready") } - go initRmr(tests.GetPort(), tests.MaxMsgSize, tests.Flags, log) - time.Sleep(time.Second) - assert.True(t, msgr == nil || !(*msgr).IsReady()) + msg := rmrCgo.NewMBuf(1, tests.MaxMsgSize, "test 1", &tests.DummyPayload, &tests.DummyXAction) + log.Debugf("#rmr_c_go_api_test.TestSendMsgRmrInvalidPortError - Going to send the message: %#v\n", msg) + result, err := msgr.SendMsg(msg, true) + + assert.NotNil(t, err) + assert.Nil(t, result) + + msgr.Close() } -//func TestSendRecvMsgSuccess(t *testing.T) { -// var err error -// log, err = logger.InitLogger(true) -// if err != nil { -// t.Errorf("#rmrCgoApi_test.TestSendRecvMsgSuccess - failed to initialize logger, error: %s", err) -// } -// go initRmr(tests.GetPort(), tests.MaxMsgSize, tests.Flags, log) -// time.Sleep(time.Second) -// if msgr == nil || !(*msgr).IsReady() { -// t.Errorf("#rmrCgoApi_test.TestSendRecvMsgSuccess - The rmr router is not ready") -// } -// msg := NewMBuf(1, tests.MaxMsgSize, &tests.DummyPayload, &tests.DummyXAction) -// log.Debugf("#rmrCgoApi_test.TestSendRecvMsgSuccess - Going to send the message: %#v\n", msg) -// msgR, _ := (*msgr).SendMsg(msg) -// log.Debugf("#rmrCgoApi_test.TestSendRecvMsgSuccess - The message has been sent %#v\n", msgR) -// log.Debugf("#rmrCgoApi_test.TestSendRecvMsgSuccess - The payload: %#v\n", msgR.Payload) -// msgR = (*msgr).RecvMsg() -// log.Debugf("#rmrCgoApi_test.TestSendRecvMsgSuccess - The message has been received: %#v\n", msgR) -// log.Debugf("#rmrCgoApi_test.TestSendRecvMsgSuccess - The payload: %#v\n", msgR.Payload) -// (*msgr).Close() -//} - -//func TestIsReadySuccess(t *testing.T) { -// var err error -// log, err = logger.InitLogger(true) -// if err != nil { -// t.Errorf("#rmrCgoApi_test.TestIsReadySuccess - The rmr router is not ready") -// } -// go initRmr(tests.GetPort(), tests.MaxMsgSize, tests.Flags, log) -// time.Sleep(time.Second) -// if msgr == nil || !(*msgr).IsReady() { -// t.Errorf("#rmrCgoApi_test.TestIsReadySuccess - The rmr router is not ready") -// } -//} - -func initRmr(port string, maxMsgSize int, flags int, log *logger.Logger){ - var ctx *Context +func initRmr(port string, maxMsgSize int, flags int, log *logger.Logger) { + var ctx *rmrCgo.Context msgr = ctx.Init(port, maxMsgSize, flags, log) +}*/ + +func initLog(t *testing.T) *logger.Logger { + log, err := logger.InitLogger(logger.DebugLevel) + if err != nil { + t.Errorf("#rmr_c_go_api_test.initLog - failed to initialize logger, error: %s", err) + } + return log }