diff options
| author | Dave Henderson <dhenderson@gmail.com> | 2024-01-25 20:11:31 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-01-25 20:11:31 -0500 |
| commit | ebb97fb7367fb983cffc1935a8fb57e4b80f5249 (patch) | |
| tree | 43ef6cd01f629f60f59efe1e5b003f7c8e3a1257 /funcs/test_test.go | |
| parent | f1d9158ea99abbe556251c1ff2fe970f3b460ee9 (diff) | |
Move funcs package to internal (#1977)
Signed-off-by: Dave Henderson <dhenderson@gmail.com>
Diffstat (limited to 'funcs/test_test.go')
| -rw-r--r-- | funcs/test_test.go | 174 |
1 files changed, 0 insertions, 174 deletions
diff --git a/funcs/test_test.go b/funcs/test_test.go deleted file mode 100644 index 26909813..00000000 --- a/funcs/test_test.go +++ /dev/null @@ -1,174 +0,0 @@ -package funcs - -import ( - "context" - "strconv" - "testing" - - "github.com/stretchr/testify/assert" - "github.com/stretchr/testify/require" -) - -func TestCreateTestFuncs(t *testing.T) { - t.Parallel() - - for i := 0; i < 10; i++ { - // Run this a bunch to catch race conditions - t.Run(strconv.Itoa(i), func(t *testing.T) { - t.Parallel() - - ctx := context.Background() - fmap := CreateTestFuncs(ctx) - actual := fmap["test"].(func() interface{}) - - assert.Equal(t, ctx, actual().(*TestFuncs).ctx) - }) - } -} - -func TestAssert(t *testing.T) { - t.Parallel() - - f := TestNS() - _, err := f.Assert(false) - assert.Error(t, err) - - _, err = f.Assert(true) - require.NoError(t, err) - - _, err = f.Assert("foo", true) - require.NoError(t, err) - - _, err = f.Assert("foo", "false") - assert.EqualError(t, err, "assertion failed: foo") -} - -func TestRequired(t *testing.T) { - t.Parallel() - - f := TestNS() - errMsg := "can not render template: a required value was not set" - v, err := f.Required("") - assert.Error(t, err) - assert.EqualError(t, err, errMsg) - assert.Nil(t, v) - - v, err = f.Required(nil) - assert.Error(t, err) - assert.EqualError(t, err, errMsg) - assert.Nil(t, v) - - errMsg = "hello world" - v, err = f.Required(errMsg, nil) - assert.Error(t, err) - assert.EqualError(t, err, errMsg) - assert.Nil(t, v) - - v, err = f.Required(42, nil) - assert.Error(t, err) - assert.EqualError(t, err, "at <1>: expected string; found int") - assert.Nil(t, v) - - v, err = f.Required() - assert.Error(t, err) - assert.EqualError(t, err, "wrong number of args: want 1 or 2, got 0") - assert.Nil(t, v) - - v, err = f.Required("", 2, 3) - assert.Error(t, err) - assert.EqualError(t, err, "wrong number of args: want 1 or 2, got 3") - assert.Nil(t, v) - - v, err = f.Required(0) - require.NoError(t, err) - assert.Equal(t, v, 0) - - v, err = f.Required("foo") - require.NoError(t, err) - assert.Equal(t, v, "foo") -} - -func TestTernary(t *testing.T) { - t.Parallel() - - f := TestNS() - testdata := []struct { - tval, fval, b interface{} - expected interface{} - }{ - {"foo", 42, false, 42}, - {"foo", 42, "yes", "foo"}, - {false, true, true, false}, - } - for _, d := range testdata { - assert.Equal(t, d.expected, f.Ternary(d.tval, d.fval, d.b)) - } -} - -func TestKind(t *testing.T) { - t.Parallel() - - f := TestNS() - testdata := []struct { - arg interface{} - expected string - }{ - {"foo", "string"}, - {nil, "invalid"}, - {false, "bool"}, - {[]string{"foo", "bar"}, "slice"}, - {map[string]string{"foo": "bar"}, "map"}, - {42, "int"}, - {42.0, "float64"}, - {uint(42), "uint"}, - {struct{}{}, "struct"}, - } - for _, d := range testdata { - assert.Equal(t, d.expected, f.Kind(d.arg)) - } -} - -func TestIsKind(t *testing.T) { - t.Parallel() - - f := TestNS() - truedata := []struct { - arg interface{} - kind string - }{ - {"foo", "string"}, - {nil, "invalid"}, - {false, "bool"}, - {[]string{"foo", "bar"}, "slice"}, - {map[string]string{"foo": "bar"}, "map"}, - {42, "int"}, - {42.0, "float64"}, - {uint(42), "uint"}, - {struct{}{}, "struct"}, - {42.0, "number"}, - {42, "number"}, - {uint32(64000), "number"}, - {complex128(64000), "number"}, - } - for _, d := range truedata { - assert.True(t, f.IsKind(d.kind, d.arg)) - } - - falsedata := []struct { - arg interface{} - kind string - }{ - {"foo", "bool"}, - {nil, "struct"}, - {false, "string"}, - {[]string{"foo", "bar"}, "map"}, - {map[string]string{"foo": "bar"}, "int"}, - {42, "int64"}, - {42.0, "float32"}, - {uint(42), "int"}, - {struct{}{}, "interface"}, - } - for _, d := range falsedata { - assert.False(t, f.IsKind(d.kind, d.arg)) - } -} |
