-//
-//import (
-// "e2mgr/logger"
-// "e2mgr/mocks"
-// "e2mgr/models"
-// "e2mgr/rNibWriter"
-// "e2mgr/rmrCgo"
-// "e2mgr/sessions"
-// "e2mgr/tests"
-// "fmt"
-// "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common"
-// "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
-// "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader"
-// "github.com/stretchr/testify/mock"
-// "testing"
-// "time"
-//)
-//
-///*
-// * Test an error response while in an x2 setup request session
-// */
-//func TestHandleInSession(t *testing.T){
-// log, err := logger.InitLogger(logger.InfoLevel)
-// if err!=nil{
-// t.Errorf("#sctp_errors_notification_handler_test.TestHandleInSession - failed to initialize logger, error: %s", err)
-// }
-//
-// readerMock :=&mocks.RnibReaderMock{}
-// rnibReaderProvider := func() reader.RNibReader {
-// return readerMock
-// }
-// writerMock := &mocks.RnibWriterMock{}
-// rnibWriterProvider := func() rNibWriter.RNibWriter {
-// return writerMock
-// }
-// h := NewRanLostConnectionHandler(rnibReaderProvider,rnibWriterProvider)
-//
-// e2Sessions := make(sessions.E2Sessions)
-// xaction := []byte(fmt.Sprintf("%32s", "1234"))
-// e2Sessions[string(xaction)] = sessions.E2SessionDetails{SessionStart: time.Now()}
-// payload := []byte("Error")
-// mBuf := rmrCgo.NewMBuf(tests.MessageType, len(payload),"RanName", &payload, &xaction)
-// notificationRequest := models.NotificationRequest{RanName: mBuf.Meid, Len: mBuf.Len, Payload: *mBuf.Payload,
-// StartTime: time.Now(), TransactionId: string(xaction)}
-// var messageChannel chan<- *models.NotificationResponse
-//
-// nb := &entities.NodebInfo{RanName:mBuf.Meid, ConnectionStatus:entities.ConnectionStatus_CONNECTED,}
-// var rnibErr common.IRNibError
-// readerMock.On("GetNodeb", mBuf.Meid).Return(nb, rnibErr)
-// updatedNb := &entities.NodebInfo{RanName:mBuf.Meid, ConnectionStatus:entities.ConnectionStatus_DISCONNECTED,}
-// writerMock.On("SaveNodeb", mock.Anything, updatedNb).Return(rnibErr)
-//
-// h.Handle(log,e2Sessions, ¬ificationRequest, messageChannel)
-//
-// if _, ok := e2Sessions[string(xaction)]; ok {
-// t.Errorf("want: no session entry, got: session entry for: %s", string(xaction) )
-// }
-//}
-//
-///*
-// * Test an error response triggered by the E2 Term
-// */
-//
-//func TestHandleNoSession(t *testing.T){
-// log, err := logger.InitLogger(logger.InfoLevel)
-// if err!=nil{
-// t.Errorf("#sctp_errors_notification_handler_test.TestHandleNoSession - failed to initialize logger, error: %s", err)
-// }
-//
-// readerMock :=&mocks.RnibReaderMock{}
-// rnibReaderProvider := func() reader.RNibReader {
-// return readerMock
-// }
-// writerMock := &mocks.RnibWriterMock{}
-// rnibWriterProvider := func() rNibWriter.RNibWriter {
-// return writerMock
-// }
-// h := NewRanLostConnectionHandler(rnibReaderProvider,rnibWriterProvider)
-//
-// e2Sessions := make(sessions.E2Sessions)
-// transactionId := "1234"
-// xaction := []byte(fmt.Sprintf("%32s", transactionId+"6"))
-// e2Sessions[transactionId] = sessions.E2SessionDetails{SessionStart: time.Now()}
-// payload := []byte("Error")
-// mBuf := rmrCgo.NewMBuf(tests.MessageType, len(payload),"RanName", &payload, &xaction)
-// notificationRequest := models.NotificationRequest{RanName: mBuf.Meid, Len: mBuf.Len, Payload: *mBuf.Payload, StartTime: time.Now(),
-// TransactionId: string(xaction)}
-// var messageChannel chan<- *models.NotificationResponse
-//
-// nb := &entities.NodebInfo{RanName:mBuf.Meid, ConnectionStatus:entities.ConnectionStatus_CONNECTED,}
-// var rnibErr common.IRNibError
-// readerMock.On("GetNodeb", mBuf.Meid).Return(nb, rnibErr)
-// updatedNb := &entities.NodebInfo{RanName:mBuf.Meid, ConnectionStatus:entities.ConnectionStatus_DISCONNECTED,}
-// writerMock.On("SaveNodeb", mock.Anything, updatedNb).Return(rnibErr)
-//
-// h.Handle(log,e2Sessions, ¬ificationRequest, messageChannel)
-//
-// if _, ok := e2Sessions[transactionId]; !ok {
-// t.Errorf("want: session entry for %s, got: no session entry", transactionId )
-// }
-//}
-///*
-// * Test an error response triggered by the E2 Term
-// */
-//func TestHandleUnsolicitedDisconnectionConnectedSuccess(t *testing.T){
-// log, err := logger.InitLogger(logger.DebugLevel)
-// if err!=nil{
-// t.Errorf("#sctp_errors_notification_handler_test.TestHandleNoSession - failed to initialize logger, error: %s", err)
-// }
-//
-// readerMock :=&mocks.RnibReaderMock{}
-// rnibReaderProvider := func() reader.RNibReader {
-// return readerMock
-// }
-// writerMock := &mocks.RnibWriterMock{}
-// rnibWriterProvider := func() rNibWriter.RNibWriter {
-// return writerMock
-// }
-// h := NewRanLostConnectionHandler(rnibReaderProvider,rnibWriterProvider)
-//
-// e2Sessions := make(sessions.E2Sessions)
-// transactionId := "1234"
-// xaction := []byte(fmt.Sprintf("%32s", transactionId+"6"))
-// e2Sessions[transactionId] = sessions.E2SessionDetails{SessionStart: time.Now()}
-// payload := []byte("Error")
-// mBuf := rmrCgo.NewMBuf(tests.MessageType, len(payload),"RanName", &payload, &xaction)
-// notificationRequest := models.NotificationRequest{RanName: mBuf.Meid, Len: mBuf.Len, Payload: *mBuf.Payload, StartTime: time.Now(),
-// TransactionId: string(xaction)}
-// var messageChannel chan<- *models.NotificationResponse
-//
-// nb := &entities.NodebInfo{RanName:mBuf.Meid, ConnectionStatus:entities.ConnectionStatus_CONNECTED,}
-// var rnibErr common.IRNibError
-// readerMock.On("GetNodeb", mBuf.Meid).Return(nb, rnibErr)
-// updatedNb := &entities.NodebInfo{RanName:mBuf.Meid, ConnectionStatus:entities.ConnectionStatus_DISCONNECTED,}
-// writerMock.On("SaveNodeb", mock.Anything, updatedNb).Return(rnibErr)
-//
-// h.Handle(log,e2Sessions, ¬ificationRequest, messageChannel)
-//}
+
+import (
+ "e2mgr/logger"
+ "e2mgr/mocks"
+ "e2mgr/models"
+ "e2mgr/sessions"
+ "github.com/pkg/errors"
+ "testing"
+)
+
+func TestLostConnectionHandlerSuccess(t *testing.T) {
+ logger, _ := logger.InitLogger(logger.InfoLevel)
+ ranName := "test"
+ notificationRequest := models.NotificationRequest{RanName: ranName}
+ ranReconnectionManagerMock := &mocks.RanReconnectionManagerMock{}
+ ranReconnectionManagerMock.On("ReconnectRan", ranName).Return(nil)
+ handler := NewRanLostConnectionHandler(ranReconnectionManagerMock)
+ handler.Handle(logger, make(sessions.E2Sessions), ¬ificationRequest, nil)
+ ranReconnectionManagerMock.AssertCalled(t, "ReconnectRan", ranName)
+}
+
+func TestLostConnectionHandlerFailure(t *testing.T) {
+ logger, _ := logger.InitLogger(logger.InfoLevel)
+ ranName := "test"
+ notificationRequest := models.NotificationRequest{RanName: ranName}
+ ranReconnectionManagerMock := &mocks.RanReconnectionManagerMock{}
+ ranReconnectionManagerMock.On("ReconnectRan", ranName).Return(errors.New("error"))
+ handler := NewRanLostConnectionHandler(ranReconnectionManagerMock)
+ handler.Handle(logger, make(sessions.E2Sessions), ¬ificationRequest, nil)
+ ranReconnectionManagerMock.AssertCalled(t, "ReconnectRan", ranName)
+}
+