2 // Copyright 2019 AT&T Intellectual Property
3 // Copyright 2019 Nokia
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
9 // http://www.apache.org/licenses/LICENSE-2.0
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.
17 // This source code is part of the near-RT RIC (RAN Intelligent Controller)
18 // platform project (RICP).
20 package rmrmsghandlers
31 "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common"
32 "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
33 "github.com/stretchr/testify/assert"
34 "github.com/stretchr/testify/mock"
41 prefix = "10.0.2.15:9999|"
42 e2tInstanceFullAddress = "10.0.2.15:9999"
43 nodebRanName = "gnb:310-410-b5c67788"
46 func TestParseSetupRequest_Success(t *testing.T){
47 path, err :=filepath.Abs("../../tests/resources/setupRequest_gnb.xml")
51 xmlGnb, err := ioutil.ReadFile(path)
55 handler, _, _, _, _, _ := initMocks(t)
56 prefBytes := []byte(prefix)
57 request, _, err := handler.parseSetupRequest(append(prefBytes, xmlGnb...))
58 assert.Equal(t, request.GetPlmnId(), "131014")
59 assert.Equal(t, request.GetNbId(), "10011001101010101011")
62 func TestParseSetupRequest_PipFailure(t *testing.T){
63 path, err :=filepath.Abs("../../tests/resources/setupRequest_gnb.xml")
67 xmlGnb, err := ioutil.ReadFile(path)
71 handler, _, _, _, _, _ := initMocks(t)
72 prefBytes := []byte("10.0.2.15:9999")
73 request, _, err := handler.parseSetupRequest(append(prefBytes, xmlGnb...))
74 assert.Nil(t, request)
76 assert.EqualError(t, err, "#E2SetupRequestNotificationHandler.parseSetupRequest - Error parsing E2 Setup Request failed extract Payload: no | separator found")
79 func TestParseSetupRequest_UnmarshalFailure(t *testing.T){
80 handler, _, _, _, _, _ := initMocks(t)
81 prefBytes := []byte(prefix)
82 request, _, err := handler.parseSetupRequest(append(prefBytes, 1,2,3))
83 assert.Nil(t, request)
85 assert.EqualError(t, err, "#E2SetupRequestNotificationHandler.parseSetupRequest - Error unmarshalling E2 Setup Request payload: 31302e302e322e31353a393939397c010203")
88 func TestE2SetupRequestNotificationHandler_HandleNewGnbSuccess(t *testing.T) {
89 path, err :=filepath.Abs("../../tests/resources/setupRequest_gnb.xml")
93 xmlGnb, err := ioutil.ReadFile(path)
98 handler, readerMock, writerMock, rmrMessengerMock, e2tInstancesManagerMock, routingManagerClientMock := initMocks(t)
99 var e2tInstance = &entities.E2TInstance{}
100 e2tInstancesManagerMock.On("GetE2TInstance", e2tInstanceFullAddress).Return(e2tInstance, nil)
101 var gnb *entities.NodebInfo
102 readerMock.On("GetNodeb", mock.Anything).Return(gnb, common.NewResourceNotFoundError("Not found"))
103 writerMock.On("SaveNodeb", mock.Anything, mock.Anything).Return(nil)
104 routingManagerClientMock.On("AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything).Return(nil)
105 writerMock.On("UpdateNodebInfo", mock.Anything).Return(nil)
106 e2tInstancesManagerMock.On("AddRansToInstance", mock.Anything, mock.Anything).Return(nil)
108 rmrMessage := &rmrCgo.MBuf{}
109 rmrMessengerMock.On("SendMsg", mock.Anything, mock.Anything).Return(rmrMessage, errEmpty)
110 prefBytes := []byte(prefix)
111 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, xmlGnb...)}
112 handler.Handle(notificationRequest)
113 assertNewNodebSuccessCalls(readerMock, t, e2tInstancesManagerMock, writerMock, routingManagerClientMock, rmrMessengerMock)
116 func TestE2SetupRequestNotificationHandler_HandleNewEnGnbSuccess(t *testing.T) {
117 path, err :=filepath.Abs("../../tests/resources/setupRequest_en-gNB.xml")
121 xmlEnGnb, err := ioutil.ReadFile(path)
126 handler, readerMock, writerMock, rmrMessengerMock, e2tInstancesManagerMock, routingManagerClientMock := initMocks(t)
127 var e2tInstance = &entities.E2TInstance{}
128 e2tInstancesManagerMock.On("GetE2TInstance", e2tInstanceFullAddress).Return(e2tInstance, nil)
129 var gnb *entities.NodebInfo
130 readerMock.On("GetNodeb", mock.Anything).Return(gnb, common.NewResourceNotFoundError("Not found"))
131 writerMock.On("SaveNodeb", mock.Anything, mock.Anything).Return(nil)
132 routingManagerClientMock.On("AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything).Return(nil)
133 writerMock.On("UpdateNodebInfo", mock.Anything).Return(nil)
134 e2tInstancesManagerMock.On("AddRansToInstance", mock.Anything, mock.Anything).Return(nil)
136 rmrMessage := &rmrCgo.MBuf{}
137 rmrMessengerMock.On("SendMsg", mock.Anything, mock.Anything).Return(rmrMessage, errEmpty)
138 prefBytes := []byte(prefix)
139 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, xmlEnGnb...)}
140 handler.Handle(notificationRequest)
141 assertNewNodebSuccessCalls(readerMock, t, e2tInstancesManagerMock, writerMock, routingManagerClientMock, rmrMessengerMock)
144 func TestE2SetupRequestNotificationHandler_HandleNewNgEnbSuccess(t *testing.T) {
145 path, err :=filepath.Abs("../../tests/resources/setupRequest_ng-eNB.xml")
149 xmlEnGnb, err := ioutil.ReadFile(path)
154 handler, readerMock, writerMock, rmrMessengerMock, e2tInstancesManagerMock, routingManagerClientMock := initMocks(t)
155 var e2tInstance = &entities.E2TInstance{}
156 e2tInstancesManagerMock.On("GetE2TInstance", e2tInstanceFullAddress).Return(e2tInstance, nil)
157 var gnb *entities.NodebInfo
158 readerMock.On("GetNodeb", mock.Anything).Return(gnb, common.NewResourceNotFoundError("Not found"))
159 writerMock.On("SaveNodeb", mock.Anything, mock.Anything).Return(nil)
160 routingManagerClientMock.On("AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything).Return(nil)
161 writerMock.On("UpdateNodebInfo", mock.Anything).Return(nil)
162 e2tInstancesManagerMock.On("AddRansToInstance", mock.Anything, mock.Anything).Return(nil)
164 rmrMessage := &rmrCgo.MBuf{}
165 rmrMessengerMock.On("SendMsg", mock.Anything, mock.Anything).Return(rmrMessage, errEmpty)
166 prefBytes := []byte(prefix)
167 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, xmlEnGnb...)}
168 handler.Handle(notificationRequest)
169 assertNewNodebSuccessCalls(readerMock, t, e2tInstancesManagerMock, writerMock, routingManagerClientMock, rmrMessengerMock)
172 func TestE2SetupRequestNotificationHandler_HandleExistingGnbSuccess(t *testing.T) {
173 path, err :=filepath.Abs("../../tests/resources/setupRequest_gnb.xml")
177 xmlGnb, err := ioutil.ReadFile(path)
182 handler, readerMock, writerMock, rmrMessengerMock, e2tInstancesManagerMock, routingManagerClientMock := initMocks(t)
183 var e2tInstance = &entities.E2TInstance{}
184 e2tInstancesManagerMock.On("GetE2TInstance", e2tInstanceFullAddress).Return(e2tInstance, nil)
185 var gnb = &entities.NodebInfo{
186 RanName: nodebRanName,
187 AssociatedE2TInstanceAddress: e2tInstanceFullAddress,
188 ConnectionStatus: entities.ConnectionStatus_CONNECTED,
189 NodeType: entities.Node_GNB,
190 Configuration: &entities.NodebInfo_Gnb{Gnb: &entities.Gnb{}},
192 readerMock.On("GetNodeb", mock.Anything).Return(gnb, nil)
193 routingManagerClientMock.On("AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything).Return(nil)
194 writerMock.On("UpdateNodebInfo", mock.Anything).Return(nil)
195 e2tInstancesManagerMock.On("AddRansToInstance", mock.Anything, mock.Anything).Return(nil)
197 rmrMessage := &rmrCgo.MBuf{}
198 rmrMessengerMock.On("SendMsg", mock.Anything, mock.Anything).Return(rmrMessage, errEmpty)
199 prefBytes := []byte(prefix)
200 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, xmlGnb...)}
201 handler.Handle(notificationRequest)
202 assertExistingNodebSuccessCalls(readerMock, t, e2tInstancesManagerMock, writerMock, routingManagerClientMock, rmrMessengerMock)
205 func TestE2SetupRequestNotificationHandler_HandleParseError(t *testing.T) {
206 path, err :=filepath.Abs("../../tests/resources/setupRequest_gnb.xml")
210 xmlGnb, err := ioutil.ReadFile(path)
215 handler, readerMock, writerMock, rmrMessengerMock, e2tInstancesManagerMock, routingManagerClientMock := initMocks(t)
216 prefBytes := []byte("invalid_prefix")
217 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, xmlGnb...)}
218 handler.Handle(notificationRequest)
219 readerMock.AssertNotCalled(t, "GetNodeb", mock.Anything)
220 writerMock.AssertNotCalled(t, "SaveNodeb", mock.Anything, mock.Anything)
221 routingManagerClientMock.AssertNotCalled(t, "AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything)
222 writerMock.AssertNotCalled(t, "UpdateNodebInfo", mock.Anything)
223 e2tInstancesManagerMock.AssertNotCalled(t, "AddRansToInstance", mock.Anything, mock.Anything)
224 rmrMessengerMock.AssertNotCalled(t, "SendMsg", mock.Anything, mock.Anything)
227 func TestE2SetupRequestNotificationHandler_HandleUnmarshalError(t *testing.T) {
228 handler, readerMock, writerMock, rmrMessengerMock, e2tInstancesManagerMock, routingManagerClientMock := initMocks(t)
229 prefBytes := []byte(prefix)
230 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, "xmlGnb"...)}
231 handler.Handle(notificationRequest)
232 readerMock.AssertNotCalled(t, "GetNodeb", mock.Anything)
233 writerMock.AssertNotCalled(t, "SaveNodeb", mock.Anything, mock.Anything)
234 routingManagerClientMock.AssertNotCalled(t, "AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything)
235 writerMock.AssertNotCalled(t, "UpdateNodebInfo", mock.Anything)
236 e2tInstancesManagerMock.AssertNotCalled(t, "AddRansToInstance", mock.Anything, mock.Anything)
237 rmrMessengerMock.AssertNotCalled(t, "SendMsg", mock.Anything, mock.Anything)
240 func TestE2SetupRequestNotificationHandler_HandleGetE2TInstanceError(t *testing.T) {
241 path, err :=filepath.Abs("../../tests/resources/setupRequest_gnb.xml")
245 xmlGnb, err := ioutil.ReadFile(path)
250 handler, readerMock, writerMock, rmrMessengerMock, e2tInstancesManagerMock, routingManagerClientMock := initMocks(t)
251 var e2tInstance * entities.E2TInstance
252 e2tInstancesManagerMock.On("GetE2TInstance", e2tInstanceFullAddress).Return(e2tInstance, common.NewResourceNotFoundError("Not found"))
253 prefBytes := []byte(prefix)
254 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, xmlGnb...)}
255 handler.Handle(notificationRequest)
256 e2tInstancesManagerMock.AssertCalled(t, "GetE2TInstance", e2tInstanceFullAddress)
257 readerMock.AssertNotCalled(t, "GetNodeb", mock.Anything)
258 writerMock.AssertNotCalled(t, "SaveNodeb", mock.Anything, mock.Anything)
259 routingManagerClientMock.AssertNotCalled(t, "AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything)
260 writerMock.AssertNotCalled(t, "UpdateNodebInfo", mock.Anything)
261 e2tInstancesManagerMock.AssertNotCalled(t, "AddRansToInstance", mock.Anything, mock.Anything)
262 rmrMessengerMock.AssertNotCalled(t, "SendMsg", mock.Anything, mock.Anything)
265 func TestE2SetupRequestNotificationHandler_HandleGetNodebError(t *testing.T) {
266 path, err :=filepath.Abs("../../tests/resources/setupRequest_gnb.xml")
270 xmlGnb, err := ioutil.ReadFile(path)
274 handler, readerMock, writerMock, routingManagerClientMock, e2tInstancesManagerMock, rmrMessengerMock := initMocks(t)
275 var e2tInstance = &entities.E2TInstance{}
276 e2tInstancesManagerMock.On("GetE2TInstance", e2tInstanceFullAddress).Return(e2tInstance, nil)
277 var gnb *entities.NodebInfo
278 readerMock.On("GetNodeb", mock.Anything).Return(gnb, common.NewInternalError(errors.New("some error")))
279 prefBytes := []byte(prefix)
280 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, xmlGnb...)}
281 handler.Handle(notificationRequest)
282 e2tInstancesManagerMock.AssertCalled(t, "GetE2TInstance", e2tInstanceFullAddress)
283 readerMock.AssertCalled(t, "GetNodeb", mock.Anything)
284 writerMock.AssertNotCalled(t, "SaveNodeb", mock.Anything, mock.Anything)
285 routingManagerClientMock.AssertNotCalled(t, "AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything)
286 writerMock.AssertNotCalled(t, "UpdateNodebInfo", mock.Anything)
287 e2tInstancesManagerMock.AssertNotCalled(t, "AddRansToInstance", mock.Anything, mock.Anything)
288 rmrMessengerMock.AssertNotCalled(t, "SendMsg", mock.Anything, mock.Anything)
291 func TestE2SetupRequestNotificationHandler_HandleAssociationError(t *testing.T) {
292 path, err :=filepath.Abs("../../tests/resources/setupRequest_gnb.xml")
296 xmlGnb, err := ioutil.ReadFile(path)
301 handler, readerMock, writerMock, rmrMessengerMock, e2tInstancesManagerMock, routingManagerClientMock := initMocks(t)
302 var e2tInstance = &entities.E2TInstance{}
303 e2tInstancesManagerMock.On("GetE2TInstance", e2tInstanceFullAddress).Return(e2tInstance, nil)
304 var gnb *entities.NodebInfo
305 readerMock.On("GetNodeb", mock.Anything).Return(gnb, common.NewResourceNotFoundError("Not found"))
306 writerMock.On("SaveNodeb", mock.Anything, mock.Anything).Return(nil)
307 writerMock.On("UpdateNodebInfo", mock.Anything).Return(nil)
308 e2tInstancesManagerMock.On("AddRansToInstance", mock.Anything, mock.Anything).Return(nil)
309 routingManagerClientMock.On("AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything).Return(errors.New("association error"))
311 rmrMessage := &rmrCgo.MBuf{}
312 rmrMessengerMock.On("SendMsg", mock.Anything, mock.Anything).Return(rmrMessage, errEmpty)
314 prefBytes := []byte(prefix)
315 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, xmlGnb...)}
316 handler.Handle(notificationRequest)
317 readerMock.AssertCalled(t, "GetNodeb", mock.Anything)
318 e2tInstancesManagerMock.AssertCalled(t, "GetE2TInstance", e2tInstanceFullAddress)
319 writerMock.AssertCalled(t, "SaveNodeb", mock.Anything, mock.Anything)
320 routingManagerClientMock.AssertCalled(t, "AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything)
321 writerMock.AssertCalled(t, "UpdateNodebInfo", mock.Anything)
322 e2tInstancesManagerMock.AssertCalled(t, "AddRansToInstance", mock.Anything, mock.Anything)
323 rmrMessengerMock.AssertCalled(t, "SendMsg", mock.Anything, mock.Anything)
327 func TestE2SetupRequestNotificationHandler_ConvertTo20BitStringError(t *testing.T){
329 path, err :=filepath.Abs("../../tests/resources/setupRequest_en-gNB.xml")
333 xmlEnGnb, err := ioutil.ReadFile(path)
337 logger := tests.InitLog(t)
338 config := &configuration.Configuration{RnibRetryIntervalMs: 10, MaxRnibConnectionAttempts: 3, GlobalRicId: struct {
341 }{PlmnId : "131014", RicNearRtId: "10011001101010101011"}}
342 rmrMessengerMock := &mocks.RmrMessengerMock{}
343 rmrSender := tests.InitRmrSender(rmrMessengerMock, logger)
344 readerMock := &mocks.RnibReaderMock{}
345 writerMock := &mocks.RnibWriterMock{}
346 routingManagerClientMock := &mocks.RoutingManagerClientMock{}
347 rnibDataService := services.NewRnibDataService(logger, config, readerMock, writerMock)
348 e2tInstancesManagerMock := &mocks.E2TInstancesManagerMock{}
349 e2tAssociationManager := managers.NewE2TAssociationManager(logger, rnibDataService, e2tInstancesManagerMock, routingManagerClientMock)
350 handler := NewE2SetupRequestNotificationHandler(logger, config, e2tInstancesManagerMock, rmrSender, rnibDataService, e2tAssociationManager)
352 var e2tInstance = &entities.E2TInstance{}
353 e2tInstancesManagerMock.On("GetE2TInstance", e2tInstanceFullAddress).Return(e2tInstance, nil)
354 var gnb *entities.NodebInfo
355 readerMock.On("GetNodeb", mock.Anything).Return(gnb, common.NewResourceNotFoundError("Not found"))
356 writerMock.On("SaveNodeb", mock.Anything, mock.Anything).Return(nil)
357 routingManagerClientMock.On("AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything).Return(nil)
358 writerMock.On("UpdateNodebInfo", mock.Anything).Return(nil)
359 e2tInstancesManagerMock.On("AddRansToInstance", mock.Anything, mock.Anything).Return(nil)
361 rmrMessage := &rmrCgo.MBuf{}
362 rmrMessengerMock.On("SendMsg", mock.Anything, mock.Anything).Return(rmrMessage, errEmpty)
363 prefBytes := []byte(prefix)
364 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, xmlEnGnb...)}
365 handler.Handle(notificationRequest)
366 readerMock.AssertCalled(t, "GetNodeb", mock.Anything)
367 e2tInstancesManagerMock.AssertCalled(t, "GetE2TInstance", e2tInstanceFullAddress)
368 writerMock.AssertCalled(t, "SaveNodeb", mock.Anything, mock.Anything)
369 routingManagerClientMock.AssertCalled(t, "AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything)
370 writerMock.AssertCalled(t, "UpdateNodebInfo", mock.Anything)
371 e2tInstancesManagerMock.AssertCalled(t, "AddRansToInstance", mock.Anything, mock.Anything)
372 rmrMessengerMock.AssertNotCalled(t, "SendMsg", mock.Anything, mock.Anything)
375 func TestE2SetupRequestNotificationHandler_HandleExistingGnbInvalidStatusError(t *testing.T) {
376 path, err :=filepath.Abs("../../tests/resources/setupRequest_gnb.xml")
380 xmlGnb, err := ioutil.ReadFile(path)
385 handler, readerMock, writerMock, routingManagerClientMock, e2tInstancesManagerMock, rmrMessengerMock := initMocks(t)
386 var gnb = &entities.NodebInfo{RanName: nodebRanName, ConnectionStatus:entities.ConnectionStatus_SHUTTING_DOWN}
387 readerMock.On("GetNodeb", mock.Anything).Return(gnb, nil)
388 var e2tInstance = &entities.E2TInstance{}
389 e2tInstancesManagerMock.On("GetE2TInstance", e2tInstanceFullAddress).Return(e2tInstance, nil)
390 prefBytes := []byte(prefix)
391 notificationRequest := &models.NotificationRequest{RanName: nodebRanName, Payload: append(prefBytes, xmlGnb...)}
392 handler.Handle(notificationRequest)
393 readerMock.AssertCalled(t, "GetNodeb", mock.Anything)
394 e2tInstancesManagerMock.AssertCalled(t, "GetE2TInstance", e2tInstanceFullAddress)
395 writerMock.AssertNotCalled(t, "SaveNodeb", mock.Anything, mock.Anything)
396 routingManagerClientMock.AssertNotCalled(t, "AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything)
397 writerMock.AssertNotCalled(t, "UpdateNodebInfo", mock.Anything)
398 e2tInstancesManagerMock.AssertNotCalled(t, "AddRansToInstance", mock.Anything, mock.Anything)
399 rmrMessengerMock.AssertNotCalled(t, "SendMsg", mock.Anything, mock.Anything)
402 func initMocks(t *testing.T) (E2SetupRequestNotificationHandler, *mocks.RnibReaderMock, *mocks.RnibWriterMock, *mocks.RmrMessengerMock, *mocks.E2TInstancesManagerMock, *mocks.RoutingManagerClientMock) {
403 logger := tests.InitLog(t)
404 config := &configuration.Configuration{RnibRetryIntervalMs: 10, MaxRnibConnectionAttempts: 3, GlobalRicId: struct {
407 }{PlmnId : "131014", RicNearRtId: "556670"}}
408 rmrMessengerMock := &mocks.RmrMessengerMock{}
409 rmrSender := tests.InitRmrSender(rmrMessengerMock, logger)
410 readerMock := &mocks.RnibReaderMock{}
411 writerMock := &mocks.RnibWriterMock{}
412 routingManagerClientMock := &mocks.RoutingManagerClientMock{}
413 rnibDataService := services.NewRnibDataService(logger, config, readerMock, writerMock)
414 e2tInstancesManagerMock := &mocks.E2TInstancesManagerMock{}
415 e2tAssociationManager := managers.NewE2TAssociationManager(logger, rnibDataService, e2tInstancesManagerMock, routingManagerClientMock)
416 handler := NewE2SetupRequestNotificationHandler(logger, config, e2tInstancesManagerMock, rmrSender, rnibDataService, e2tAssociationManager)
417 return handler, readerMock, writerMock, rmrMessengerMock, e2tInstancesManagerMock, routingManagerClientMock
420 func assertNewNodebSuccessCalls(readerMock *mocks.RnibReaderMock, t *testing.T, e2tInstancesManagerMock *mocks.E2TInstancesManagerMock, writerMock *mocks.RnibWriterMock, routingManagerClientMock *mocks.RoutingManagerClientMock, rmrMessengerMock *mocks.RmrMessengerMock) {
421 readerMock.AssertCalled(t, "GetNodeb", mock.Anything)
422 writerMock.AssertCalled(t, "SaveNodeb", mock.Anything, mock.Anything)
423 e2tInstancesManagerMock.AssertCalled(t, "GetE2TInstance", e2tInstanceFullAddress)
424 routingManagerClientMock.AssertCalled(t, "AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything)
425 writerMock.AssertCalled(t, "UpdateNodebInfo", mock.Anything)
426 e2tInstancesManagerMock.AssertCalled(t, "AddRansToInstance", mock.Anything, mock.Anything)
427 rmrMessengerMock.AssertCalled(t, "SendMsg", mock.Anything, mock.Anything)
430 func assertExistingNodebSuccessCalls(readerMock *mocks.RnibReaderMock, t *testing.T, e2tInstancesManagerMock *mocks.E2TInstancesManagerMock, writerMock *mocks.RnibWriterMock, routingManagerClientMock *mocks.RoutingManagerClientMock, rmrMessengerMock *mocks.RmrMessengerMock) {
431 readerMock.AssertCalled(t, "GetNodeb", mock.Anything)
432 writerMock.AssertNotCalled(t, "SaveNodeb", mock.Anything, mock.Anything)
433 e2tInstancesManagerMock.AssertCalled(t, "GetE2TInstance", e2tInstanceFullAddress)
434 routingManagerClientMock.AssertCalled(t, "AssociateRanToE2TInstance", e2tInstanceFullAddress, mock.Anything)
435 writerMock.AssertCalled(t, "UpdateNodebInfo", mock.Anything)
436 e2tInstancesManagerMock.AssertCalled(t, "AddRansToInstance", mock.Anything, mock.Anything)
437 rmrMessengerMock.AssertCalled(t, "SendMsg", mock.Anything, mock.Anything)