84 lines
2.2 KiB
Go
84 lines
2.2 KiB
Go
package config
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestDefaultAgentConfig(t *testing.T) {
|
|
cfg := DefaultAgentConfig()
|
|
|
|
if cfg.CoreInterval != 15*time.Second {
|
|
t.Fatalf("CoreInterval = %v, want 15s", cfg.CoreInterval)
|
|
}
|
|
if cfg.DiskInterval != 30*time.Second {
|
|
t.Fatalf("DiskInterval = %v, want 30s", cfg.DiskInterval)
|
|
}
|
|
if cfg.NetworkInterval != 30*time.Second {
|
|
t.Fatalf("NetworkInterval = %v, want 30s", cfg.NetworkInterval)
|
|
}
|
|
if cfg.ProcessInterval != 60*time.Second {
|
|
t.Fatalf("ProcessInterval = %v, want 60s", cfg.ProcessInterval)
|
|
}
|
|
if cfg.BatchSize != 128 {
|
|
t.Fatalf("BatchSize = %d, want 128", cfg.BatchSize)
|
|
}
|
|
if cfg.CheckpointDriver != "file" {
|
|
t.Fatalf("CheckpointDriver = %q, want file", cfg.CheckpointDriver)
|
|
}
|
|
}
|
|
|
|
func TestDefaultGatewayConfig(t *testing.T) {
|
|
cfg := DefaultGatewayConfig()
|
|
if cfg.Addr != "0.0.0.0:4318" {
|
|
t.Fatalf("Addr = %q, want 0.0.0.0:4318", cfg.Addr)
|
|
}
|
|
if cfg.MaxMetricsPerHost != 20000 {
|
|
t.Fatalf("MaxMetricsPerHost = %d, want 20000", cfg.MaxMetricsPerHost)
|
|
}
|
|
}
|
|
|
|
func TestDurEnv(t *testing.T) {
|
|
if got := durEnv("HMS_TEST_DUR_EMPTY", 3*time.Second); got != 3*time.Second {
|
|
t.Fatalf("durEnv empty = %v, want 3s", got)
|
|
}
|
|
|
|
t.Setenv("HMS_TEST_DUR", "7s")
|
|
if got := durEnv("HMS_TEST_DUR", 3*time.Second); got != 7*time.Second {
|
|
t.Fatalf("durEnv set = %v, want 7s", got)
|
|
}
|
|
|
|
t.Setenv("HMS_TEST_DUR_BAD", "not-a-duration")
|
|
if got := durEnv("HMS_TEST_DUR_BAD", 3*time.Second); got != 3*time.Second {
|
|
t.Fatalf("durEnv bad = %v, want fallback 3s", got)
|
|
}
|
|
}
|
|
|
|
func TestIntEnv(t *testing.T) {
|
|
if got := intEnv("HMS_TEST_INT_EMPTY", 42); got != 42 {
|
|
t.Fatalf("intEnv empty = %d, want 42", got)
|
|
}
|
|
|
|
t.Setenv("HMS_TEST_INT", "99")
|
|
if got := intEnv("HMS_TEST_INT", 42); got != 99 {
|
|
t.Fatalf("intEnv set = %d, want 99", got)
|
|
}
|
|
|
|
t.Setenv("HMS_TEST_INT_BAD", "bad")
|
|
if got := intEnv("HMS_TEST_INT_BAD", 42); got != 42 {
|
|
t.Fatalf("intEnv bad = %d, want fallback 42", got)
|
|
}
|
|
}
|
|
|
|
func TestSplitCSV(t *testing.T) {
|
|
got := splitCSV("")
|
|
if got != nil {
|
|
t.Fatalf("splitCSV(empty) = %v, want nil", got)
|
|
}
|
|
|
|
got = splitCSV("/var/log/a.log, /var/log/b.log ,")
|
|
if len(got) != 2 || got[0] != "/var/log/a.log" || got[1] != "/var/log/b.log" {
|
|
t.Fatalf("splitCSV = %v", got)
|
|
}
|
|
}
|