142 lines
3.4 KiB
Go
142 lines
3.4 KiB
Go
package env
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
)
|
|
|
|
func TestSplitEnvToListWithColon(t *testing.T) {
|
|
|
|
defer os.Unsetenv("TEST_LIST")
|
|
|
|
os.Setenv("TEST_LIST", "foo,bar")
|
|
list := SplitEnvToDeps("TEST_LIST")
|
|
if list == nil {
|
|
t.Errorf("Expected: not nil")
|
|
}
|
|
if list[0].Name != "foo" {
|
|
t.Errorf("Expected: foo got %s", list[0])
|
|
}
|
|
if list[1].Name != "bar" {
|
|
t.Errorf("Expected: bar got %s", list[1])
|
|
}
|
|
|
|
os.Setenv("TEST_LIST", "foo1")
|
|
list1 := SplitEnvToDeps("TEST_LIST")
|
|
if list1 == nil {
|
|
t.Errorf("Expected: not nil")
|
|
}
|
|
if len(list1) != 1 {
|
|
t.Errorf("Expected len to be 1 not %i", len(list1))
|
|
}
|
|
if list1[0].Name != "foo1" {
|
|
t.Errorf("Expected: foo1 got %s", list1[0])
|
|
}
|
|
|
|
os.Setenv("TEST_LIST", "foo:foo")
|
|
list2 := SplitEnvToDeps("TEST_LIST")
|
|
if list2[0].Name != "foo" {
|
|
t.Errorf("Expected: foo got %s", list2[0].Name)
|
|
}
|
|
if list2[0].Namespace != "foo" {
|
|
t.Errorf("Expected: foo got %s", list2[0].Namespace)
|
|
}
|
|
|
|
os.Setenv("TEST_LIST", "bar")
|
|
list3 := SplitEnvToDeps("TEST_LIST")
|
|
if list3[0].Name != "bar" {
|
|
t.Errorf("Expected: bar got %s", list3[0].Name)
|
|
}
|
|
if list3[0].Namespace != "default" {
|
|
t.Errorf("Expected: default got %s", list3[0].Namespace)
|
|
}
|
|
|
|
os.Setenv("TEST_LIST", "foo:foo1:foo2")
|
|
list4 := SplitEnvToDeps("TEST_LIST")
|
|
if len(list4) != 0 {
|
|
t.Errorf("Expected list to be empty")
|
|
}
|
|
|
|
os.Setenv("TEST_LIST", "foo:foo1:foo2,bar")
|
|
list5 := SplitEnvToDeps("TEST_LIST")
|
|
if list5[0].Namespace != "default" {
|
|
t.Errorf("Expected: default got %s", list5[0].Namespace)
|
|
}
|
|
if list5[0].Name != "bar" {
|
|
t.Errorf("Expected: bar got %s", list5[0].Name)
|
|
}
|
|
|
|
os.Setenv("TEST_LIST", "foo:foo1:foo2,bar:foo")
|
|
list6 := SplitEnvToDeps("TEST_LIST")
|
|
if list6[0].Namespace != "bar" {
|
|
t.Errorf("Expected: bar got %s", list6[0].Namespace)
|
|
}
|
|
if list6[0].Name != "foo" {
|
|
t.Errorf("Expected: foo got %s", list6[0].Name)
|
|
}
|
|
|
|
os.Setenv("TEST_LIST", ":foo")
|
|
list7 := SplitEnvToDeps("TEST_LIST")
|
|
if len(list7) != 0 {
|
|
t.Errorf("Invalid format, missing namespace in pod")
|
|
}
|
|
}
|
|
|
|
func TestSplitEmptyEnvWithColon(t *testing.T) {
|
|
defer os.Unsetenv("TEST_LIST")
|
|
os.Setenv("TEST_LIST", "")
|
|
list := SplitEnvToDeps("TEST_LIST")
|
|
if list != nil {
|
|
t.Errorf("Expected nil got %v", list)
|
|
}
|
|
}
|
|
|
|
func TestSplitCommand(t *testing.T) {
|
|
defer os.Unsetenv("COMMAND")
|
|
list2 := SplitCommand()
|
|
if len(list2) > 0 {
|
|
t.Errorf("Expected len to be 0, got %v", len(list2))
|
|
}
|
|
os.Setenv("COMMAND", "echo test")
|
|
list := SplitCommand()
|
|
if list == nil {
|
|
t.Errorf("Expected slice, got nil")
|
|
return
|
|
}
|
|
if len(list) != 2 {
|
|
t.Errorf("Expected two elements, got %v", len(list))
|
|
}
|
|
if list[0] != "echo" {
|
|
t.Errorf("Expected echo, got %s", list[0])
|
|
}
|
|
if list[1] != "test" {
|
|
t.Errorf("Expected test, got %s", list[1])
|
|
}
|
|
|
|
os.Setenv("COMMAND", "")
|
|
list1 := SplitCommand()
|
|
if len(list1) > 0 {
|
|
t.Errorf("Expected len to be 0, got %v", len(list1))
|
|
}
|
|
|
|
}
|
|
|
|
func TestGetBaseNamespace(t *testing.T) {
|
|
defer os.Unsetenv("NAMESPACE")
|
|
os.Setenv("NAMESPACE", "")
|
|
getBaseNamespace := GetBaseNamespace()
|
|
if getBaseNamespace != "default" {
|
|
t.Errorf("Expected namespace to be default, got %v", getBaseNamespace)
|
|
}
|
|
os.Setenv("NAMESPACE", "foo")
|
|
getBaseNamespace = GetBaseNamespace()
|
|
if getBaseNamespace != "foo" {
|
|
t.Errorf("Expected namespace to be foo, got %v", getBaseNamespace)
|
|
}
|
|
os.Setenv("NAMESPACE", "default")
|
|
getBaseNamespace = GetBaseNamespace()
|
|
if getBaseNamespace != "default" {
|
|
t.Errorf("Expected namespace to be default, got %v", getBaseNamespace)
|
|
}
|
|
}
|