X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=dmaap-mediator-producer%2Finternal%2Fconfig%2Fconfig_test.go;h=4a65dc0db92ef310bb8ea6d8fb33bf4e36f5f3d9;hb=b1fb1d8f58d756be42a139043e4ef02374d6c434;hp=6b02e42093a0700243126fdf219e242409695256;hpb=64654a9b0e63b7e36249bef4f542cdf7fac56020;p=nonrtric.git diff --git a/dmaap-mediator-producer/internal/config/config_test.go b/dmaap-mediator-producer/internal/config/config_test.go index 6b02e420..4a65dc0d 100644 --- a/dmaap-mediator-producer/internal/config/config_test.go +++ b/dmaap-mediator-producer/internal/config/config_test.go @@ -21,25 +21,31 @@ package config import ( + "bytes" "os" "reflect" "testing" + + log "github.com/sirupsen/logrus" + "github.com/stretchr/testify/require" ) func TestNew_envVarsSetConfigContainSetValues(t *testing.T) { os.Setenv("LOG_LEVEL", "Debug") os.Setenv("INFO_PRODUCER_SUPERVISION_CALLBACK_HOST", "supervisionCallbackHost") - os.Setenv("INFO_PRODUCER_SUPERVISION_CALLBACK_PORT", "supervisionCallbackPort") + os.Setenv("INFO_PRODUCER_SUPERVISION_CALLBACK_PORT", "8095") os.Setenv("INFO_JOB_CALLBACK_HOST", "jobCallbackHost") - os.Setenv("INFO_JOB_CALLBACK_PORT", "jobCallbackPort") + os.Setenv("INFO_JOB_CALLBACK_PORT", "8096") os.Setenv("INFO_COORD_ADDR", "infoCoordAddr") - defer os.Clearenv() + t.Cleanup(func() { + os.Clearenv() + }) wantConfig := Config{ LogLevel: "Debug", InfoProducerSupervisionCallbackHost: "supervisionCallbackHost", - InfoProducerSupervisionCallbackPort: "supervisionCallbackPort", + InfoProducerSupervisionCallbackPort: 8095, InfoJobCallbackHost: "jobCallbackHost", - InfoJobCallbackPort: "jobCallbackPort", + InfoJobCallbackPort: 8096, InfoCoordinatorAddress: "infoCoordAddr", } if got := New(); !reflect.DeepEqual(got, &wantConfig) { @@ -47,13 +53,38 @@ func TestNew_envVarsSetConfigContainSetValues(t *testing.T) { } } +func TestNew_faultyIntValueSetConfigContainDefaultValueAndWarnInLog(t *testing.T) { + assertions := require.New(t) + var buf bytes.Buffer + log.SetOutput(&buf) + + os.Setenv("INFO_PRODUCER_SUPERVISION_CALLBACK_PORT", "wrong") + t.Cleanup(func() { + log.SetOutput(os.Stderr) + os.Clearenv() + }) + wantConfig := Config{ + LogLevel: "Info", + InfoProducerSupervisionCallbackHost: "", + InfoProducerSupervisionCallbackPort: 8085, + InfoJobCallbackHost: "", + InfoJobCallbackPort: 8086, + InfoCoordinatorAddress: "http://enrichmentservice:8083", + } + if got := New(); !reflect.DeepEqual(got, &wantConfig) { + t.Errorf("New() = %v, want %v", got, &wantConfig) + } + logString := buf.String() + assertions.Contains(logString, "Invalid int value: wrong for variable: INFO_PRODUCER_SUPERVISION_CALLBACK_PORT. Default value: 8085 will be used") +} + func TestNew_envVarsNotSetConfigContainDefaultValues(t *testing.T) { wantConfig := Config{ LogLevel: "Info", InfoProducerSupervisionCallbackHost: "", - InfoProducerSupervisionCallbackPort: "8085", + InfoProducerSupervisionCallbackPort: 8085, InfoJobCallbackHost: "", - InfoJobCallbackPort: "8086", + InfoJobCallbackPort: 8086, InfoCoordinatorAddress: "http://enrichmentservice:8083", } if got := New(); !reflect.DeepEqual(got, &wantConfig) {