1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
package config
import (
"os"
"testing"
"github.com/mimecast/dtail/internal/testutil"
)
func TestEnv(t *testing.T) {
t.Run("env var set to yes", func(t *testing.T) {
// Set a test env var
os.Setenv("TEST_ENV_VAR", "yes")
defer os.Unsetenv("TEST_ENV_VAR")
value := Env("TEST_ENV_VAR")
testutil.AssertEqual(t, true, value)
})
t.Run("env var set to other value", func(t *testing.T) {
// Set to something other than "yes"
os.Setenv("TEST_ENV_VAR", "no")
defer os.Unsetenv("TEST_ENV_VAR")
value := Env("TEST_ENV_VAR")
testutil.AssertEqual(t, false, value)
})
t.Run("non-existing env var", func(t *testing.T) {
// Make sure it doesn't exist
os.Unsetenv("NON_EXISTING_VAR")
value := Env("NON_EXISTING_VAR")
testutil.AssertEqual(t, false, value)
})
t.Run("empty env var", func(t *testing.T) {
// Set empty value
os.Setenv("EMPTY_VAR", "")
defer os.Unsetenv("EMPTY_VAR")
value := Env("EMPTY_VAR")
testutil.AssertEqual(t, false, value)
})
}
func TestHostname(t *testing.T) {
t.Run("default hostname", func(t *testing.T) {
// Clear any override
os.Unsetenv("DTAIL_HOSTNAME_OVERRIDE")
hostname, err := Hostname()
testutil.AssertNoError(t, err)
// Should return actual hostname (non-empty)
if hostname == "" {
t.Error("Expected non-empty hostname")
}
})
t.Run("hostname override", func(t *testing.T) {
// Set override
os.Setenv("DTAIL_HOSTNAME_OVERRIDE", "test-host")
defer os.Unsetenv("DTAIL_HOSTNAME_OVERRIDE")
hostname, err := Hostname()
testutil.AssertNoError(t, err)
testutil.AssertEqual(t, "test-host", hostname)
})
t.Run("empty hostname override", func(t *testing.T) {
// Set empty override
os.Setenv("DTAIL_HOSTNAME_OVERRIDE", "")
defer os.Unsetenv("DTAIL_HOSTNAME_OVERRIDE")
hostname, err := Hostname()
testutil.AssertNoError(t, err)
// Should return actual hostname (non-empty)
if hostname == "" {
t.Error("Expected non-empty hostname when override is empty")
}
})
}
|