sync from Azure to LF
[ric-plt/e2mgr.git] / E2Manager / handlers / rmrmsghandlers / ran_lost_connection_handler_test.go
1 ////
2 //// Copyright 2019 AT&T Intellectual Property
3 //// Copyright 2019 Nokia
4 ////
5 //// Licensed under the Apache License, Version 2.0 (the "License");
6 //// you may not use this file except in compliance with the License.
7 //// You may obtain a copy of the License at
8 ////
9 ////      http://www.apache.org/licenses/LICENSE-2.0
10 ////
11 //// Unless required by applicable law or agreed to in writing, software
12 //// distributed under the License is distributed on an "AS IS" BASIS,
13 //// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 //// See the License for the specific language governing permissions and
15 //// limitations under the License.
16 ////
17 package rmrmsghandlers
18
19 import (
20         "e2mgr/logger"
21         "e2mgr/mocks"
22         "e2mgr/models"
23         "github.com/pkg/errors"
24         "testing"
25 )
26
27 func TestLostConnectionHandlerSuccess(t *testing.T) {
28         logger, _ := logger.InitLogger(logger.InfoLevel)
29         ranName := "test"
30         notificationRequest := models.NotificationRequest{RanName: ranName}
31         ranReconnectionManagerMock := &mocks.RanReconnectionManagerMock{}
32         ranReconnectionManagerMock.On("ReconnectRan", ranName).Return(nil)
33         handler := NewRanLostConnectionHandler(logger, ranReconnectionManagerMock)
34         handler.Handle(&notificationRequest)
35         ranReconnectionManagerMock.AssertCalled(t, "ReconnectRan", ranName)
36 }
37
38 func TestLostConnectionHandlerFailure(t *testing.T) {
39         logger, _ := logger.InitLogger(logger.InfoLevel)
40         ranName := "test"
41         notificationRequest := models.NotificationRequest{RanName: ranName}
42         ranReconnectionManagerMock := &mocks.RanReconnectionManagerMock{}
43         ranReconnectionManagerMock.On("ReconnectRan", ranName).Return(errors.New("error"))
44         handler := NewRanLostConnectionHandler(logger, ranReconnectionManagerMock)
45         handler.Handle(&notificationRequest)
46         ranReconnectionManagerMock.AssertCalled(t, "ReconnectRan", ranName)
47 }