kubelatte-ce
Форк от sbertech/kubelatte-ce
108 строк · 2.9 Кб
1package env2
3import (4"encoding/json"5"fmt"6"github.com/stretchr/testify/assert"7"gitverse.ru/ktrntrsv/kubelatte-ce/pkg/util/types"8metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"9"os"10"testing"11"time"12)
13
14func TestSelector(t *testing.T) {15data, _ := json.Marshal(&types.NamespaceSelector{16LabelSelector: metav1.LabelSelector{17MatchExpressions: []metav1.LabelSelectorRequirement{18{19Key: "test",20Operator: "In",21Values: []string{"aaaa"},22},23},24},25Include: []string{"incExample"},26Exclude: []string{"exExample"},27})28
29fmt.Println(string(data))30}
31
32func TestInitEnv(t *testing.T) {33t.Run("Operator", func(t *testing.T) {34os.Setenv("KBLT_CREATOR", "true")35os.Setenv("KBLT_NAMESPACE_SLR_TI", "{{{{ddsc,dl;qq'w;qw;'q.s`z}}}}")36os.Setenv("KBLT_NAMESPACE_SLR_CMN", "kblt.test")37InitEnvOperator()38assert.Equal(t, "kblt.creation.resource", KbltCreatorLabelKey)39})40t.Run("WebhookServer", func(t *testing.T) {41os.Setenv("LOG_FILE_NAME", "test.log")42os.Setenv("KBLT_PREFIX_EXCEPTION", "true")43
44InitEnvWebhookServer()45assert.Equal(t, "test.log", LogsFileName)46})47}
48
49func TestManager_get_bool_string_int_duration(t *testing.T) {50
51t.Run("Correct", func(t *testing.T) {52m := &Manager{53Events: []Event{},54}55gotb := m.GetBool("TEST", true, false, false)56if gotb != true {57t.Errorf("m.GetBool() got %v, expect true", gotb)58}59gots := m.GetString("TEST", "test")60if gots != "test" {61t.Errorf("m.GetString() got %s, expect \"test\"", gots)62}63goti := m.GetInt("TEST", 10, 0, false)64if goti != 10 {65t.Errorf("m.GetInt() got %v, expect 10", goti)66}67gotd := m.GetDuration("TEST", time.Duration(100), time.Duration(0), false)68if gotd != time.Duration(100) {69t.Errorf("m.GetDuration() got %v, expect 20", gotd)70}71os.Setenv("TEST", "%")72gotb = m.GetBool("TEST", true, false, false)73if gotb != false {74t.Errorf("m.GetBool() got %v, expect false", gotb)75}76goti = m.GetInt("TEST", 10, 20, true)77if goti != 20 {78t.Errorf("m.GetInt() got %v, expect 20", goti)79}80gotd = m.GetDuration("TEST", time.Duration(100), time.Duration(0), false)81if gotd != time.Duration(0) {82t.Errorf("m.GetDuration() got %v, expect 20", gotd)83}84})85t.Run("Incorrect", func(t *testing.T) {86os.Setenv("TEST", "%___%")87gotb := m.GetBool("TEST", true, false, false)88if gotb {89t.Errorf("m.GetBool() got %v, expect false", gotb)90}91goti := m.GetInt("TEST", 10, 20, true)92if goti != 20 {93t.Errorf("m.GetInt() got %v, expect 20", goti)94}95gotd := m.GetDuration("TEST", time.Duration(100), time.Duration(220), true)96if gotd != time.Duration(220) {97t.Errorf("m.GetDuration() got %v, expect 220ns", gotd)98}99gotb = m.GetBool("TEST", true, true, true)100if gotb != true {101t.Errorf("m.GetBool() got %v, expect false", gotb)102}103goti = m.GetInt("TEST", 10, 2, false)104if goti != 0 {105t.Errorf("m.GetInt() got %v, expect 0", goti)106}107})108}
109