X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=capifcore%2Finternal%2Fpublishservice%2Fpublishservice_test.go;h=ab923638b5cb18aab9715999a0a8fe30d7d7050b;hb=0b4c4ecb52b1c04037a65644dc8c6c29981d9736;hp=c4112ce4664aa872e801cdedbc502567fd4570cf;hpb=158aef5fb0c5a8a68b062d2ef8602de02a55def0;p=nonrtric%2Fplt%2Fsme.git diff --git a/capifcore/internal/publishservice/publishservice_test.go b/capifcore/internal/publishservice/publishservice_test.go index c4112ce..ab92363 100644 --- a/capifcore/internal/publishservice/publishservice_test.go +++ b/capifcore/internal/publishservice/publishservice_test.go @@ -59,7 +59,11 @@ func TestPublishUnpublishService(t *testing.T) { assert.Equal(t, http.StatusNotFound, result.Code()) apiName := "app-management" - description := "Description,namespace,repoName,chartName,releaseName" + namespace := "namespace" + repoName := "repoName" + chartName := "chartName" + releaseName := "releaseName" + description := fmt.Sprintf("Description,%s,%s,%s,%s", namespace, repoName, chartName, releaseName) newServiceDescription := getServiceAPIDescription(aefId, apiName, description) // Publish a service for provider @@ -69,15 +73,15 @@ func TestPublishUnpublishService(t *testing.T) { var resultService publishapi.ServiceAPIDescription err := result.UnmarshalBodyToObject(&resultService) assert.NoError(t, err, "error unmarshaling response") - newApiId := "api_id_app-management" + newApiId := "api_id_" + apiName assert.Equal(t, *resultService.ApiId, newApiId) assert.Equal(t, "http://example.com/"+apfId+"/service-apis/"+*resultService.ApiId, result.Recorder.Header().Get(echo.HeaderLocation)) newServiceDescription.ApiId = &newApiId wantedAPILIst := []publishapi.ServiceAPIDescription{newServiceDescription} assert.True(t, serviceUnderTest.AreAPIsPublished(&wantedAPILIst)) - assert.True(t, serviceUnderTest.IsAPIPublished("aefId", "app-management")) + assert.True(t, serviceUnderTest.IsAPIPublished(aefId, apiName)) serviceRegisterMock.AssertCalled(t, "GetAefsForPublisher", apfId) - helmManagerMock.AssertCalled(t, "InstallHelmChart", "namespace", "repoName", "chartName", "releaseName") + helmManagerMock.AssertCalled(t, "InstallHelmChart", namespace, repoName, chartName, releaseName) assert.ElementsMatch(t, []string{aefId}, serviceUnderTest.getAllAefIds()) // Check that the service is published for the provider @@ -93,7 +97,7 @@ func TestPublishUnpublishService(t *testing.T) { result = testutil.NewRequest().Delete("/"+apfId+"/service-apis/"+newApiId).Go(t, requestHandler) assert.Equal(t, http.StatusNoContent, result.Code()) - helmManagerMock.AssertCalled(t, "UninstallHelmChart", "namespace", "chartName") + helmManagerMock.AssertCalled(t, "UninstallHelmChart", namespace, chartName) assert.Empty(t, serviceUnderTest.getAllAefIds()) // Check no services published @@ -118,8 +122,8 @@ func TestPostUnpublishedServiceWithUnregisteredFunction(t *testing.T) { var resultError common29122.ProblemDetails err := result.UnmarshalBodyToObject(&resultError) assert.NoError(t, err, "error unmarshaling response") - errMsg := "Function not registered, aefId" - assert.Equal(t, &errMsg, resultError.Cause) + assert.Contains(t, *resultError.Cause, aefId) + assert.Contains(t, *resultError.Cause, "not registered") notFound := http.StatusNotFound assert.Equal(t, ¬Found, resultError.Status) } @@ -158,6 +162,23 @@ func TestGetServices(t *testing.T) { assert.Contains(t, resultServices, serviceDescription2) } +func TestGetPublishedServices(t *testing.T) { + serviceUnderTest := NewPublishService(nil, nil) + + profiles := make([]publishapi.AefProfile, 1) + serviceDescription := publishapi.ServiceAPIDescription{ + AefProfiles: &profiles, + } + serviceUnderTest.publishedServices["publisher1"] = []publishapi.ServiceAPIDescription{ + serviceDescription, + } + serviceUnderTest.publishedServices["publisher2"] = []publishapi.ServiceAPIDescription{ + serviceDescription, + } + result := serviceUnderTest.GetAllPublishedServices() + assert.Len(t, result, 2) +} + func getEcho(serviceRegister providermanagement.ServiceRegister, helmManager helmmanagement.HelmManager) (*PublishService, *echo.Echo) { swagger, err := publishapi.GetSwagger() if err != nil {