From e5088a008ff7b9b7bb2a206f1eecf446aac598c1 Mon Sep 17 00:00:00 2001 From: ns019t Date: Mon, 12 Aug 2019 15:27:34 +0300 Subject: [PATCH] [RICPLT-1897] GetListNodebIds API has been changed. After code review Change-Id: I8b9d4e6b52ce3595bac7aa79d474a94abef6777b Signed-off-by: ns019t --- reader/rNibReader.go | 25 +++++++------- reader/rNibReader_test.go | 88 ++++++++++++++++++++++++++++++++++------------- 2 files changed, 78 insertions(+), 35 deletions(-) diff --git a/reader/rNibReader.go b/reader/rNibReader.go index 0509326..49ee38c 100644 --- a/reader/rNibReader.go +++ b/reader/rNibReader.go @@ -58,11 +58,6 @@ type RNibReader interface { GetRanLoadInformation(inventoryName string) (*entities.RanLoadInformation, common.IRNibError) } -const( - EnbType = "ENB" - GnbType = "GNB" -) - /* Init initializes the infrastructure required for the RNibReader instance */ @@ -126,17 +121,17 @@ func (w *rNibReaderInstance) GetCellList(inventoryName string) (*entities.Cells, func (w *rNibReaderInstance) GetListGnbIds() (*[]*entities.NbIdentity, common.IRNibError) { defer readerPool.Put(w) - return w.getListNodebIdsByType(GnbType) + return w.getListNodebIdsByType(entities.Node_GNB.String()) } func (w *rNibReaderInstance) GetListEnbIds() (*[]*entities.NbIdentity, common.IRNibError) { defer readerPool.Put(w) - return w.getListNodebIdsByType(EnbType) + return w.getListNodebIdsByType(entities.Node_ENB.String()) } func (w *rNibReaderInstance) GetCountGnbList() (int, common.IRNibError) { defer readerPool.Put(w) - size, err := (*w.sdl).GroupSize(GnbType) + size, err := (*w.sdl).GroupSize(entities.Node_GNB.String()) if err != nil { return 0, common.NewInternalError(err) } @@ -171,15 +166,21 @@ func (w *rNibReaderInstance) GetCellById(cellType entities.Cell_Type, cellId str func (w *rNibReaderInstance) GetListNodebIds()([]*entities.NbIdentity, common.IRNibError){ defer readerPool.Put(w) - dataEnb, err := (*w.sdl).GetMembers(EnbType) + dataEnb, err := (*w.sdl).GetMembers(entities.Node_ENB.String()) + if err != nil{ + return nil, common.NewInternalError(err) + } + dataGnb, err := (*w.sdl).GetMembers(entities.Node_GNB.String()) if err != nil{ return nil, common.NewInternalError(err) } - dataGnb, err := (*w.sdl).GetMembers(GnbType) + dataUnknown, err := (*w.sdl).GetMembers(entities.Node_UNKNOWN.String()) if err != nil{ return nil, common.NewInternalError(err) } - data, rnibErr := unmarshalIdentityList(append(dataEnb, dataGnb...)) + allIds := append(dataEnb, dataGnb...) + allIds = append(allIds, dataUnknown...) + data, rnibErr := unmarshalIdentityList(allIds) return *data, rnibErr } @@ -266,4 +267,4 @@ func unmarshalIdentityList(data []string) (*[]*entities.NbIdentity, common.IRNib func Close() { readerPool.Close() -} +} \ No newline at end of file diff --git a/reader/rNibReader_test.go b/reader/rNibReader_test.go index ad19ab4..fc1dee8 100644 --- a/reader/rNibReader_test.go +++ b/reader/rNibReader_test.go @@ -356,7 +356,7 @@ func TestGetListGnbIdsUnmarshalFailure(t *testing.T) { sdlInstanceMock := initSdlInstanceMock(namespace, 1) w := GetRNibReader() var e error - sdlInstanceMock.On("GetMembers", GnbType).Return([]string{"data"}, e) + sdlInstanceMock.On("GetMembers", entities.Node_GNB.String()).Return([]string{"data"}, e) ids, er := w.GetListGnbIds() assert.NotNil(t, er) assert.Nil(t, ids) @@ -372,7 +372,7 @@ func TestGetListGnbIdsSdlgoFailure(t *testing.T) { w := GetRNibReader() e := errors.New(errMsg) var data []string - sdlInstanceMock.On("GetMembers", GnbType).Return(data, e) + sdlInstanceMock.On("GetMembers", entities.Node_GNB.String()).Return(data, e) ids, er := w.GetListGnbIds() assert.NotNil(t, er) assert.Nil(t, ids) @@ -395,13 +395,13 @@ func TestGetListNodesIdsGnbSdlgoFailure(t *testing.T) { if err != nil { t.Errorf("#rNibReader_test.TestGetListNodesIdsGnbSdlgoFailure - Failed to marshal nodeb identity entity. Error: %v", err) } - sdlInstanceMock.On("GetMembers", EnbType).Return([]string{string(data)}, nilError) + sdlInstanceMock.On("GetMembers", entities.Node_ENB.String()).Return([]string{string(data)}, nilError) errMsg := "expected Sdlgo error" errMsgExpected := "2 INTERNAL_ERROR - expected Sdlgo error" expectedError := errors.New(errMsg) var nilData []string - sdlInstanceMock.On("GetMembers", GnbType).Return(nilData, expectedError) + sdlInstanceMock.On("GetMembers", entities.Node_GNB.String()).Return(nilData, expectedError) ids, er := w.GetListNodebIds() assert.NotNil(t, er) @@ -425,13 +425,13 @@ func TestGetListNodesIdsEnbSdlgoFailure(t *testing.T) { if err != nil { t.Errorf("#rNibReader_test.TestGetListNodesIdsEnbSdlgoFailure - Failed to marshal nodeb identity entity. Error: %v", err) } - sdlInstanceMock.On("GetMembers", GnbType).Return([]string{string(data)}, nilError) + sdlInstanceMock.On("GetMembers", entities.Node_GNB.String()).Return([]string{string(data)}, nilError) errMsg := "expected Sdlgo error" errMsgExpected := "2 INTERNAL_ERROR - expected Sdlgo error" expectedError := errors.New(errMsg) var nilData []string - sdlInstanceMock.On("GetMembers", EnbType).Return(nilData, expectedError) + sdlInstanceMock.On("GetMembers", entities.Node_ENB.String()).Return(nilData, expectedError) ids, er := w.GetListNodebIds() assert.NotNil(t, er) @@ -440,28 +440,46 @@ func TestGetListNodesIdsEnbSdlgoFailure(t *testing.T) { assert.EqualValues(t, errMsgExpected, er.Error()) } -func TestGetListNodesIdsEnbSdlgoSuccess(t *testing.T) { +func TestGetListNodesIdsSuccess(t *testing.T) { readerPool = nil sdlInstanceMock := initSdlInstanceMock(namespace, 1) w := GetRNibReader() + var nilError error name := "name" plmnId := "02f829" nbId := "4a952a0a" nbIdentity := &entities.NbIdentity{InventoryName: name, GlobalNbId: &entities.GlobalNbId{PlmnId: plmnId, NbId: nbId}} - var nilError error data, err := proto.Marshal(nbIdentity) if err != nil { - t.Errorf("#rNibReader_test.TestGetListNodesIdsEnbSdlgoFailure - Failed to marshal nodeb identity entity. Error: %v", err) + t.Errorf("#rNibReader_test.TestGetListNodesIdsSuccess - Failed to marshal nodeb identity entity. Error: %v", err) + } + + name1 := "name1" + plmnId1 := "02f845" + nbId1 := "4a952a75" + nbIdentity1 := &entities.NbIdentity{InventoryName: name1, GlobalNbId: &entities.GlobalNbId{PlmnId: plmnId1, NbId: nbId1}} + data1, err := proto.Marshal(nbIdentity1) + if err != nil { + t.Errorf("#rNibReader_test.TestGetListNodesIdsSuccess - Failed to marshal nodeb identity entity. Error: %v", err) } - sdlInstanceMock.On("GetMembers", GnbType).Return([]string{string(data)}, nilError) - sdlInstanceMock.On("GetMembers", EnbType).Return([]string{string(data)}, nilError) + + name2 := "name2" + nbIdentity2 := &entities.NbIdentity{InventoryName: name2} + data2, err := proto.Marshal(nbIdentity2) + if err != nil { + t.Errorf("#rNibReader_test.TestGetListNodesIdsSuccess - Failed to marshal nodeb identity entity. Error: %v", err) + } + + sdlInstanceMock.On("GetMembers", entities.Node_GNB.String()).Return([]string{string(data)}, nilError) + sdlInstanceMock.On("GetMembers", entities.Node_ENB.String()).Return([]string{string(data1)}, nilError) + sdlInstanceMock.On("GetMembers", entities.Node_UNKNOWN.String()).Return([]string{string(data2)}, nilError) ids, er := w.GetListNodebIds() assert.Nil(t, er) assert.NotNil(t, ids) - assert.Len(t, ids, 2) + assert.Len(t, ids, 3) } func TestGetListEnbIdsUnmarshalFailure(t *testing.T) { @@ -469,7 +487,7 @@ func TestGetListEnbIdsUnmarshalFailure(t *testing.T) { sdlInstanceMock := initSdlInstanceMock(namespace, 1) w := GetRNibReader() var e error - sdlInstanceMock.On("GetMembers", EnbType).Return([]string{"data"}, e) + sdlInstanceMock.On("GetMembers", entities.Node_ENB.String()).Return([]string{"data"}, e) ids, er := w.GetListEnbIds() assert.NotNil(t, er) assert.Nil(t, ids) @@ -490,7 +508,7 @@ func TestGetListEnbIdsOneId(t *testing.T) { if err != nil { t.Errorf("#rNibReader_test.TestGetListEnbIds - Failed to marshal nodeb identity entity. Error: %v", err) } - sdlInstanceMock.On("GetMembers", EnbType).Return([]string{string(data)}, e) + sdlInstanceMock.On("GetMembers", entities.Node_ENB.String()).Return([]string{string(data)}, e) ids, er := w.GetListEnbIds() assert.Nil(t, er) assert.Len(t, *ids, 1) @@ -504,7 +522,7 @@ func TestGetListEnbIdsNoIds(t *testing.T) { sdlInstanceMock := initSdlInstanceMock(namespace, 1) w := GetRNibReader() var e error - sdlInstanceMock.On("GetMembers", EnbType).Return([]string{}, e) + sdlInstanceMock.On("GetMembers", entities.Node_ENB.String()).Return([]string{}, e) ids, er := w.GetListEnbIds() assert.Nil(t, er) assert.Len(t, *ids, 0) @@ -530,7 +548,7 @@ func TestGetListEnbIds(t *testing.T) { idsEntities[i] = nbIdentity } var e error - sdlInstanceMock.On("GetMembers", EnbType).Return(idsData, e) + sdlInstanceMock.On("GetMembers", entities.Node_ENB.String()).Return(idsData, e) ids, er := w.GetListEnbIds() assert.Nil(t, er) assert.Len(t, *ids, listSize) @@ -554,7 +572,7 @@ func TestGetListGnbIdsOneId(t *testing.T) { if err != nil { t.Errorf("#rNibReader_test.TestGetListGnbIds - Failed to marshal nodeb identity entity. Error: %v", err) } - sdlInstanceMock.On("GetMembers", GnbType).Return([]string{string(data)}, e) + sdlInstanceMock.On("GetMembers", entities.Node_GNB.String()).Return([]string{string(data)}, e) ids, er := w.GetListGnbIds() assert.Nil(t, er) assert.Len(t, *ids, 1) @@ -568,7 +586,7 @@ func TestGetListGnbIdsNoIds(t *testing.T) { sdlInstanceMock := initSdlInstanceMock(namespace, 1) w := GetRNibReader() var e error - sdlInstanceMock.On("GetMembers", GnbType).Return([]string{}, e) + sdlInstanceMock.On("GetMembers", entities.Node_GNB.String()).Return([]string{}, e) ids, er := w.GetListGnbIds() assert.Nil(t, er) assert.Len(t, *ids, 0) @@ -594,7 +612,7 @@ func TestGetListGnbIds(t *testing.T) { idsEntities[i] = nbIdentity } var e error - sdlInstanceMock.On("GetMembers", GnbType).Return(idsData, e) + sdlInstanceMock.On("GetMembers", entities.Node_GNB.String()).Return(idsData, e) ids, er := w.GetListGnbIds() assert.Nil(t, er) assert.Len(t, *ids, listSize) @@ -613,7 +631,7 @@ func TestGetListEnbIdsSdlgoFailure(t *testing.T) { w := GetRNibReader() e := errors.New(errMsg) var data []string - sdlInstanceMock.On("GetMembers", EnbType).Return(data, e) + sdlInstanceMock.On("GetMembers", entities.Node_ENB.String()).Return(data, e) ids, er := w.GetListEnbIds() assert.NotNil(t, er) assert.Nil(t, ids) @@ -626,7 +644,7 @@ func TestGetCountGnbListOneId(t *testing.T) { sdlInstanceMock := initSdlInstanceMock(namespace, 1) w := GetRNibReader() var e error - sdlInstanceMock.On("GroupSize", GnbType).Return(1, e) + sdlInstanceMock.On("GroupSize", entities.Node_GNB.String()).Return(1, e) count, er := w.GetCountGnbList() assert.Nil(t, er) assert.Equal(t, count, 1) @@ -637,7 +655,7 @@ func TestGetCountGnbList(t *testing.T) { sdlInstanceMock := initSdlInstanceMock(namespace, 1) w := GetRNibReader() var e error - sdlInstanceMock.On("GroupSize", GnbType).Return(3, e) + sdlInstanceMock.On("GroupSize", entities.Node_GNB.String()).Return(3, e) count, er := w.GetCountGnbList() assert.Nil(t, er) assert.Equal(t, count, 3) @@ -651,7 +669,7 @@ func TestGetCountGnbListSdlgoFailure(t *testing.T) { w := GetRNibReader() e := errors.New(errMsg) var count int - sdlInstanceMock.On("GroupSize", GnbType).Return(count, e) + sdlInstanceMock.On("GroupSize", entities.Node_GNB.String()).Return(count, e) count, er := w.GetCountGnbList() assert.NotNil(t, er) assert.Equal(t, 0, count) @@ -1262,3 +1280,27 @@ func generateRanLoadInformation() *entities.RanLoadInformation { // fmt.Printf("responding node type NR Cell: %v\n", cell.GetServedNrCell()) // } //} +// +//func TestGetListNbIdsInteg(t *testing.T) { +// Init("e2Manager", 1) +// w := GetRNibReader() +// ids, err := w.GetListNodebIds() +// if err != nil{ +// fmt.Println(err) +// } else { +// for _, id := range ids{ +// fmt.Printf("#TestGetListGnbIdsInteg - NB ID: %s\n", id) +// } +// } +//} +// +//func TestGetRanLoadInformationInteg(t *testing.T){ +// Init("e2Manager", 1) +// w := GetRNibReader() +// ranLoadInformation, err := w.GetRanLoadInformation("ran_integ") +// if err != nil{ +// t.Errorf("#rNibReader_test.TestGetRanLoadInformationInteg - Failed to save RanLoadInformation entity. Error: %v", err) +// } +// assert.NotNil(t, ranLoadInformation) +// fmt.Printf("#rNibReader_test.TestGetRanLoadInformationInteg - GNB ID: %s\n", ranLoadInformation) +//} \ No newline at end of file -- 2.16.6