X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=dmaap-mediator-producer%2Finternal%2Fconfig%2Fregistrator_test.go;h=b2f10ccd6ad00a7b572a2502ff9fe7b1da66bced;hb=3287cf6923fe9b6f768a10e9d7a852227e1a3949;hp=353e9de8678b7bdb23cb81d65ec3491e39a456fa;hpb=47d0ee37691eddc290a1f9e34091dfd2020db07f;p=nonrtric.git diff --git a/dmaap-mediator-producer/internal/config/registrator_test.go b/dmaap-mediator-producer/internal/config/registrator_test.go index 353e9de8..b2f10ccd 100644 --- a/dmaap-mediator-producer/internal/config/registrator_test.go +++ b/dmaap-mediator-producer/internal/config/registrator_test.go @@ -21,34 +21,40 @@ package config import ( + "encoding/json" "io/ioutil" "net/http" "testing" "github.com/stretchr/testify/mock" "github.com/stretchr/testify/require" - "oransc.org/nonrtric/dmaapmediatorproducer/internal/jobs" - "oransc.org/nonrtric/dmaapmediatorproducer/internal/restclient" - "oransc.org/nonrtric/dmaapmediatorproducer/mocks" + "oransc.org/nonrtric/dmaapmediatorproducer/mocks/httpclient" ) func TestRegisterTypes(t *testing.T) { assertions := require.New(t) - clientMock := mocks.HTTPClient{} + clientMock := httpclient.HTTPClient{} clientMock.On("Do", mock.Anything).Return(&http.Response{ StatusCode: http.StatusCreated, }, nil) - restclient.Client = &clientMock - - type1 := jobs.TypeData{ - TypeId: "Type1", + schemaString := `{ + "type": "object", + "properties": {}, + "additionalProperties": false + }` + var schemaObj interface{} + json.Unmarshal([]byte(schemaString), &schemaObj) + + type1 := TypeDefinition{ + Identity: "Type1", + TypeSchema: schemaObj, } - types := []jobs.TypeData{type1} + types := []TypeDefinition{type1} - r := NewRegistratorImpl("http://localhost:9990") + r := NewRegistratorImpl("http://localhost:9990", &clientMock) err := r.RegisterTypes(types) assertions.Nil(err) @@ -61,9 +67,9 @@ func TestRegisterTypes(t *testing.T) { assertions.Equal("http", actualRequest.URL.Scheme) assertions.Equal("localhost:9990", actualRequest.URL.Host) assertions.Equal("/data-producer/v1/info-types/Type1", actualRequest.URL.Path) - assertions.Equal("application/json; charset=utf-8", actualRequest.Header.Get("Content-Type")) + assertions.Equal("application/json", actualRequest.Header.Get("Content-Type")) body, _ := ioutil.ReadAll(actualRequest.Body) - expectedBody := []byte(`{"info_job_data_schema": {"type": "object","properties": {},"additionalProperties": false}}`) + expectedBody := []byte(`{"info_job_data_schema": {"additionalProperties":false,"properties":{},"type":"object"}}`) assertions.Equal(expectedBody, body) clientMock.AssertNumberOfCalls(t, "Do", 1) } @@ -71,21 +77,19 @@ func TestRegisterTypes(t *testing.T) { func TestRegisterProducer(t *testing.T) { assertions := require.New(t) - clientMock := mocks.HTTPClient{} + clientMock := httpclient.HTTPClient{} clientMock.On("Do", mock.Anything).Return(&http.Response{ StatusCode: http.StatusCreated, }, nil) - restclient.Client = &clientMock - producer := ProducerRegistrationInfo{ InfoProducerSupervisionCallbackUrl: "supervisionCallbackUrl", SupportedInfoTypes: []string{"type1"}, InfoJobCallbackUrl: "jobCallbackUrl", } - r := NewRegistratorImpl("http://localhost:9990") + r := NewRegistratorImpl("http://localhost:9990", &clientMock) err := r.RegisterProducer("Producer1", &producer) assertions.Nil(err) @@ -98,7 +102,7 @@ func TestRegisterProducer(t *testing.T) { assertions.Equal("http", actualRequest.URL.Scheme) assertions.Equal("localhost:9990", actualRequest.URL.Host) assertions.Equal("/data-producer/v1/info-producers/Producer1", actualRequest.URL.Path) - assertions.Equal("application/json; charset=utf-8", actualRequest.Header.Get("Content-Type")) + assertions.Equal("application/json", actualRequest.Header.Get("Content-Type")) body, _ := ioutil.ReadAll(actualRequest.Body) expectedBody := []byte(`{"info_producer_supervision_callback_url":"supervisionCallbackUrl","supported_info_types":["type1"],"info_job_callback_url":"jobCallbackUrl"}`) assertions.Equal(expectedBody, body)