X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=cmd%2Fvesmgr%2Fconfig_test.go;fp=cmd%2Fvesmgr%2Fconfig_test.go;h=b255db9e98b3bdfbefff536118e8fbf62c4ea17d;hb=66b7813221b6da5c15da40953d09d3846a4bc029;hp=0a809b1c2db3b6e6cd65c776a546536b84d3e90f;hpb=4b74f01111b3b14fbb3832d8aaf4946cded374a0;p=ric-plt%2Fvespamgr.git diff --git a/cmd/vesmgr/config_test.go b/cmd/vesmgr/config_test.go index 0a809b1..b255db9 100644 --- a/cmd/vesmgr/config_test.go +++ b/cmd/vesmgr/config_test.go @@ -22,26 +22,87 @@ "bytes" "github.com/stretchr/testify/assert" "gopkg.in/yaml.v2" - ) + "os" +) - func testBaseConf(t *testing.T, vesconf VESAgentConfiguration) { +func testBaseConf(t *testing.T, vesconf VESAgentConfiguration) { assert.Equal(t, "/tmp/data", vesconf.DataDir) assert.False(t, vesconf.Debug) assert.Equal(t, vesconf.Event.MaxMissed, 2) assert.Equal(t, vesconf.Event.RetryInterval, time.Second*5) assert.Equal(t, vesconf.Measurement.Prometheus.KeepAlive, time.Second*30) - } +} - func TestBasicConfigContainsCorrectValues(t *testing.T) { +func TestBasicConfigContainsCorrectValues(t *testing.T) { vesconf := basicVespaConf() testBaseConf(t, vesconf) - } +} - func TestYamlGeneratio(t *testing.T) { +func TestCollectorConfiguration(t *testing.T) { + os.Setenv("VESMGR_PRICOLLECTOR_USER", "user123") + os.Setenv("VESMGR_PRICOLLECTOR_PASSWORD", "pass123") + os.Setenv("VESMGR_PRICOLLECTOR_PASSPHRASE", "phrase123") + os.Setenv("VESMGR_PRICOLLECTOR_ADDR", "1.2.3.4") + os.Setenv("VESMGR_PRICOLLECTOR_PORT", "1234") + os.Setenv("VESMGR_PRICOLLECTOR_SERVERROOT", "vescollector") + os.Setenv("VESMGR_PRICOLLECTOR_TOPIC", "sometopic") + os.Setenv("VESMGR_PRICOLLECTOR_SECURE", "true") + + vesconf := basicVespaConf() + getCollectorConfiguration(&vesconf) + + assert.Equal(t, "user123", vesconf.PrimaryCollector.User) + assert.Equal(t, "pass123", vesconf.PrimaryCollector.Password) + assert.Equal(t, "phrase123", vesconf.PrimaryCollector.PassPhrase) + assert.Equal(t, "1.2.3.4", vesconf.PrimaryCollector.FQDN) + assert.Equal(t, 1234, vesconf.PrimaryCollector.Port) + assert.Equal(t, "vescollector", vesconf.PrimaryCollector.ServerRoot) + assert.Equal(t, "sometopic", vesconf.PrimaryCollector.Topic) + assert.Equal(t, true, vesconf.PrimaryCollector.Secure) +} + +func TestCollectorConfigurationWhenEnvironmentVariablesAreNotDefined(t *testing.T) { + os.Unsetenv("VESMGR_PRICOLLECTOR_USER") + os.Unsetenv("VESMGR_PRICOLLECTOR_PASSWORD") + os.Unsetenv("VESMGR_PRICOLLECTOR_PASSPHRASE") + os.Unsetenv("VESMGR_PRICOLLECTOR_ADDR") + os.Unsetenv("VESMGR_PRICOLLECTOR_PORT") + os.Unsetenv("VESMGR_PRICOLLECTOR_SERVERROOT") + os.Unsetenv("VESMGR_PRICOLLECTOR_TOPIC") + os.Unsetenv("VESMGR_PRICOLLECTOR_SECURE") + + vesconf := basicVespaConf() + getCollectorConfiguration(&vesconf) + + assert.Equal(t, "", vesconf.PrimaryCollector.User) + assert.Equal(t, "", vesconf.PrimaryCollector.Password) + assert.Equal(t, "", vesconf.PrimaryCollector.PassPhrase) + assert.Equal(t, "", vesconf.PrimaryCollector.FQDN) + assert.Equal(t, 8443, vesconf.PrimaryCollector.Port) + assert.Equal(t, "", vesconf.PrimaryCollector.ServerRoot) + assert.Equal(t, "", vesconf.PrimaryCollector.Topic) + assert.Equal(t, false, vesconf.PrimaryCollector.Secure) +} + +func TestCollectorConfigurationWhenPrimaryCollectorPortIsNotInteger(t *testing.T) { + os.Setenv("VESMGR_PRICOLLECTOR_PORT", "abcd") + vesconf := basicVespaConf() + getCollectorConfiguration(&vesconf) + assert.Equal(t, 0, vesconf.PrimaryCollector.Port) +} + +func TestCollectorConfigurationWhenPrimaryCollectorSecureIsNotTrueOrFalse(t *testing.T) { + os.Setenv("VESMGR_PRICOLLECTOR_SECURE", "foo") + vesconf := basicVespaConf() + getCollectorConfiguration(&vesconf) + assert.Equal(t, false, vesconf.PrimaryCollector.Secure) +} + +func TestYamlGeneration(t *testing.T) { buffer := new(bytes.Buffer) createVespaConfig(buffer) var vesconf VESAgentConfiguration err := yaml.Unmarshal(buffer.Bytes(), &vesconf) assert.Nil(t, err) testBaseConf(t, vesconf) - } +}