Skip to content
Snippets Groups Projects
Commit ac0d335e authored by Jan Christophersen's avatar Jan Christophersen
Browse files

Fix appending a port to metrics server address if it is empty

parent 4bfc7615
No related branches found
No related tags found
No related merge requests found
......@@ -82,10 +82,10 @@ func (c *configOptionsWithMetricsServer) metricsServerAddress() (string, error)
_, port, err := net.SplitHostPort(address)
if err != nil && !strings.Contains(err.Error(), "missing port in address") {
return address, err
return "", err
}
if len(port) == 0 {
if len(address) > 0 && len(port) == 0 {
return fmt.Sprintf("%s:%d", address, common.DefaultMetricsServerPort), nil
}
return address, nil
......
......@@ -8,6 +8,55 @@ import (
"gitlab.com/gitlab-org/gitlab-ci-multi-runner/common"
)
func TestMetricsServerNone(t *testing.T) {
cfg := configOptionsWithMetricsServer{}
cfg.config = &common.Config{}
address, err := cfg.metricsServerAddress()
assert.NoError(t, err)
assert.Equal(t, address, "")
}
func TestMetricsServerEmpty(t *testing.T) {
cfg := configOptionsWithMetricsServer{}
cfg.config = &common.Config{}
cfg.MetricsServerAddress = ""
address, err := cfg.metricsServerAddress()
assert.NoError(t, err)
assert.Equal(t, address, "")
}
func TestMetricsServerEmptyCommonConfig(t *testing.T) {
cfg := configOptionsWithMetricsServer{}
cfg.config = &common.Config{}
cfg.config.MetricsServerAddress = ""
address, err := cfg.metricsServerAddress()
assert.NoError(t, err)
assert.Equal(t, address, "")
}
func TestMetricsServerInvalid(t *testing.T) {
cfg := configOptionsWithMetricsServer{}
cfg.config = &common.Config{}
cfg.MetricsServerAddress = "localhost::1234"
address, err := cfg.metricsServerAddress()
assert.Error(t, err)
assert.Equal(t, address, "")
}
func TestMetricsServerInvalidCommonConfig(t *testing.T) {
cfg := configOptionsWithMetricsServer{}
cfg.config = &common.Config{}
cfg.config.MetricsServerAddress = "localhost::1234"
address, err := cfg.metricsServerAddress()
assert.Error(t, err)
assert.Equal(t, address, "")
}
func TestMetricsServerDefaultPort(t *testing.T) {
cfg := configOptionsWithMetricsServer{}
cfg.config = &common.Config{}
......@@ -15,7 +64,7 @@ func TestMetricsServerDefaultPort(t *testing.T) {
address, err := cfg.metricsServerAddress()
assert.NoError(t, err)
assert.Equal(t, address, fmt.Sprintf("%s:%d", cfg.MetricsServerAddress, common.DefaultMetricsServerPort))
assert.Equal(t, fmt.Sprintf("%s:%d", cfg.MetricsServerAddress, common.DefaultMetricsServerPort), address)
}
func TestMetricsServerDefaultPortCommonConfig(t *testing.T) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment