Improve unit test coverage
[ric-plt/e2mgr.git] / E2Manager / clients / routing_manager_client_test.go
index bf5f82c..686733e 100644 (file)
@@ -63,7 +63,7 @@ func TestDeleteE2TInstanceSuccess(t *testing.T) {
 func TestDeleteE2TInstanceFailure(t *testing.T) {
        rmClient, httpClientMock, config := initRoutingManagerClientTest(t)
 
-       data := models.NewRoutingManagerDeleteRequestModel(E2TAddress, []string{"test1"},nil)
+       data := models.NewRoutingManagerDeleteRequestModel(E2TAddress, []string{"test1"}, nil)
        marshaled, _ := json.Marshal(data)
        body := bytes.NewBuffer(marshaled)
        url := config.RoutingManager.BaseUrl + "e2t"
@@ -76,7 +76,7 @@ func TestDeleteE2TInstanceFailure(t *testing.T) {
 func TestDeleteE2TInstanceDeleteFailure(t *testing.T) {
        rmClient, httpClientMock, config := initRoutingManagerClientTest(t)
 
-       data := models.NewRoutingManagerDeleteRequestModel(E2TAddress, []string{"test1"},nil)
+       data := models.NewRoutingManagerDeleteRequestModel(E2TAddress, []string{"test1"}, nil)
        marshaled, _ := json.Marshal(data)
        body := bytes.NewBuffer(marshaled)
        url := config.RoutingManager.BaseUrl + "e2t"
@@ -199,6 +199,53 @@ func TestDissociateRanE2TInstance_RoutingManager_400(t *testing.T) {
        assert.IsType(t, &e2managererrors.RoutingManagerError{}, err)
 }
 
+func TestDissociateAllRans_Success(t *testing.T) {
+       rmClient, httpClientMock, config := initRoutingManagerClientTest(t)
+
+       data := models.RoutingManagerE2TDataList{
+               models.NewRoutingManagerE2TData(E2TAddress),
+               models.NewRoutingManagerE2TData(E2TAddress2),
+       }
+       marshaled, _ := json.Marshal(data)
+       body := bytes.NewBuffer(marshaled)
+       url := config.RoutingManager.BaseUrl + DissociateRanE2TInstanceApiSuffix
+       respBody := ioutil.NopCloser(bytes.NewBufferString(""))
+       httpClientMock.On("Post", url, "application/json", body).Return(&http.Response{StatusCode: http.StatusCreated, Body: respBody}, nil)
+       err := rmClient.DissociateAllRans([]string{E2TAddress, E2TAddress2})
+       assert.Nil(t, err)
+}
+
+func TestDissociateAllRans_RoutingManagerError(t *testing.T) {
+       rmClient, httpClientMock, config := initRoutingManagerClientTest(t)
+
+       data := models.RoutingManagerE2TDataList{
+               models.NewRoutingManagerE2TData(E2TAddress),
+               models.NewRoutingManagerE2TData(E2TAddress2),
+       }
+       marshaled, _ := json.Marshal(data)
+       body := bytes.NewBuffer(marshaled)
+       url := config.RoutingManager.BaseUrl + DissociateRanE2TInstanceApiSuffix
+       httpClientMock.On("Post", url, "application/json", body).Return(&http.Response{}, errors.New("error"))
+       err := rmClient.DissociateAllRans([]string{E2TAddress, E2TAddress2})
+       assert.IsType(t, &e2managererrors.RoutingManagerError{}, err)
+}
+
+func TestDissociateAllRans_RoutingManager_400(t *testing.T) {
+       rmClient, httpClientMock, config := initRoutingManagerClientTest(t)
+
+       data := models.RoutingManagerE2TDataList{
+               models.NewRoutingManagerE2TData(E2TAddress),
+               models.NewRoutingManagerE2TData(E2TAddress2),
+       }
+       marshaled, _ := json.Marshal(data)
+       body := bytes.NewBuffer(marshaled)
+       url := config.RoutingManager.BaseUrl + DissociateRanE2TInstanceApiSuffix
+       respBody := ioutil.NopCloser(bytes.NewBufferString(""))
+       httpClientMock.On("Post", url, "application/json", body).Return(&http.Response{StatusCode: http.StatusBadRequest, Body: respBody}, nil)
+       err := rmClient.DissociateAllRans([]string{E2TAddress, E2TAddress2})
+       assert.IsType(t, &e2managererrors.RoutingManagerError{}, err)
+}
+
 // TODO: extract to test_utils
 func initLog(t *testing.T) *logger.Logger {
        log, err := logger.InitLogger(logger.InfoLevel)