X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=test%2Fusecases%2Foruclosedlooprecovery%2Fgoversion%2Fmain_test.go;h=c0e2973161bc091eac3391bee01a865a5c91c721;hb=3b2f07a98d1d5e2f83aaf05fede3f07379d48b88;hp=99419bf782ff4202651ae597d50e4cd5827660b1;hpb=c658d388f93467cb1a1229d11a0e01616cd97e3c;p=nonrtric.git diff --git a/test/usecases/oruclosedlooprecovery/goversion/main_test.go b/test/usecases/oruclosedlooprecovery/goversion/main_test.go index 99419bf7..c0e29731 100644 --- a/test/usecases/oruclosedlooprecovery/goversion/main_test.go +++ b/test/usecases/oruclosedlooprecovery/goversion/main_test.go @@ -54,23 +54,24 @@ func Test_init(t *testing.T) { doInit() wantedConfiguration := &config.Config{ - LogLevel: log.InfoLevel, ConsumerHost: "consumerHost", ConsumerPort: 8095, InfoCoordinatorAddress: "http://enrichmentservice:8083", - SDNRHost: "http://localhost", - SDNRPort: 3904, + SDNRAddress: "http://localhost:3904", SDNRUser: "admin", SDNPassword: "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U", ORUToODUMapFile: "o-ru-to-o-du-map.csv", + ConsumerCertPath: "security/consumer.crt", + ConsumerKeyPath: "security/consumer.key", + LogLevel: log.InfoLevel, } assertions.Equal(wantedConfiguration, configuration) assertions.Equal(fmt.Sprint(wantedConfiguration.ConsumerPort), consumerPort) - assertions.Equal(wantedConfiguration.ConsumerHost+":"+fmt.Sprint(wantedConfiguration.ConsumerPort), jobRegistrationInfo.JobResultUri) + assertions.Equal(wantedConfiguration.ConsumerHost+":"+fmt.Sprint(wantedConfiguration.ConsumerPort), jobRegistrationInfo.JobResultURI) wantedLinkFailureConfig := linkfailure.Configuration{ - SDNRAddress: wantedConfiguration.SDNRHost + ":" + fmt.Sprint(wantedConfiguration.SDNRPort), + SDNRAddress: wantedConfiguration.SDNRAddress, SDNRUser: wantedConfiguration.SDNRUser, SDNRPassword: wantedConfiguration.SDNPassword, } @@ -92,8 +93,10 @@ func Test_validateConfiguration(t *testing.T) { name: "Valid config, should return nil", args: args{ configuration: &config.Config{ - ConsumerHost: "host", - ConsumerPort: 80, + ConsumerHost: "host", + ConsumerPort: 80, + ConsumerCertPath: "security/consumer.crt", + ConsumerKeyPath: "security/consumer.key", }, }, }, @@ -186,34 +189,20 @@ func Test_getRouter_shouldContainAllPathsWithHandlers(t *testing.T) { assertions.Nil(err) path, _ = stopHandlerRoute.GetPathTemplate() assertions.Equal("/admin/stop", path) -} -func Test_startServer_shouldDeleteJobWhenServerStopsWithErrorAndLog(t *testing.T) { - assertions := require.New(t) - - var buf bytes.Buffer - log.SetOutput(&buf) - - os.Setenv("CONSUMER_PORT", "wrong") - t.Cleanup(func() { - log.SetOutput(os.Stderr) - }) - - mockServer := &mocks.Server{} - mockServer.On("ListenAndServe").Return(errors.New("Server failure")) - - startServer(mockServer) - - log := buf.String() - assertions.Contains(log, "level=error") - assertions.Contains(log, "Server stopped unintentionally due to: Server failure. Deleteing job.") - assertions.Contains(log, "Please remove job 14e7bb84-a44d-44c1-90b7-6995a92ad43c manually") + statusHandlerRoute := r.Get("status") + assertions.NotNil(statusHandlerRoute) + supportedMethods, err = statusHandlerRoute.GetMethods() + assertions.Equal([]string{http.MethodGet}, supportedMethods) + assertions.Nil(err) + path, _ = statusHandlerRoute.GetPathTemplate() + assertions.Equal("/status", path) } func Test_startHandler(t *testing.T) { assertions := require.New(t) - jobRegistrationInfo.JobResultUri = "host:80" + jobRegistrationInfo.JobResultURI = "host:80" type args struct { mockReturnBody []byte @@ -283,6 +272,16 @@ func Test_startHandler(t *testing.T) { expectedBody := wantedBody assertions.Equal(expectedBody, body) clientMock.AssertNumberOfCalls(t, "Do", 1) + + // Check that the running status is "started" + statusHandler := http.HandlerFunc(statusHandler) + statusResponseRecorder := httptest.NewRecorder() + statusRequest, _ := http.NewRequest(http.MethodGet, "/status", nil) + + statusHandler.ServeHTTP(statusResponseRecorder, statusRequest) + + assertions.Equal(http.StatusOK, statusResponseRecorder.Code) + assertions.Equal(`{"status": "started"}`, statusResponseRecorder.Body.String()) }) } } @@ -290,7 +289,7 @@ func Test_startHandler(t *testing.T) { func Test_stopHandler(t *testing.T) { assertions := require.New(t) - jobRegistrationInfo.JobResultUri = "host:80" + jobRegistrationInfo.JobResultURI = "host:80" type args struct { mockReturnBody []byte @@ -343,6 +342,16 @@ func Test_stopHandler(t *testing.T) { assertions.Equal("enrichmentservice:8083", actualRequest.URL.Host) assertions.Equal("/data-consumer/v1/info-jobs/14e7bb84-a44d-44c1-90b7-6995a92ad43c", actualRequest.URL.Path) clientMock.AssertNumberOfCalls(t, "Do", 1) + + // Check that the running status is "stopped" + statusHandler := http.HandlerFunc(statusHandler) + statusResponseRecorder := httptest.NewRecorder() + statusRequest, _ := http.NewRequest(http.MethodGet, "/status", nil) + + statusHandler.ServeHTTP(statusResponseRecorder, statusRequest) + + assertions.Equal(http.StatusOK, statusResponseRecorder.Code) + assertions.Equal(`{"status": "stopped"}`, statusResponseRecorder.Body.String()) }) } }