summaryrefslogtreecommitdiff
path: root/funcs/test.go
diff options
context:
space:
mode:
authorDave Henderson <dhenderson@gmail.com>2024-01-25 20:11:31 -0500
committerGitHub <noreply@github.com>2024-01-25 20:11:31 -0500
commitebb97fb7367fb983cffc1935a8fb57e4b80f5249 (patch)
tree43ef6cd01f629f60f59efe1e5b003f7c8e3a1257 /funcs/test.go
parentf1d9158ea99abbe556251c1ff2fe970f3b460ee9 (diff)
Move funcs package to internal (#1977)
Signed-off-by: Dave Henderson <dhenderson@gmail.com>
Diffstat (limited to 'funcs/test.go')
-rw-r--r--funcs/test.go120
1 files changed, 0 insertions, 120 deletions
diff --git a/funcs/test.go b/funcs/test.go
deleted file mode 100644
index 875cf631..00000000
--- a/funcs/test.go
+++ /dev/null
@@ -1,120 +0,0 @@
-package funcs
-
-import (
- "context"
- "fmt"
- "reflect"
-
- "github.com/hairyhenderson/gomplate/v4/conv"
- "github.com/hairyhenderson/gomplate/v4/test"
-)
-
-// TestNS -
-//
-// Deprecated: don't use
-func TestNS() *TestFuncs {
- return &TestFuncs{}
-}
-
-// AddTestFuncs -
-//
-// Deprecated: use [CreateTestFuncs] instead
-func AddTestFuncs(f map[string]interface{}) {
- for k, v := range CreateTestFuncs(context.Background()) {
- f[k] = v
- }
-}
-
-// CreateTestFuncs -
-func CreateTestFuncs(ctx context.Context) map[string]interface{} {
- f := map[string]interface{}{}
-
- ns := &TestFuncs{ctx}
- f["test"] = func() interface{} { return ns }
-
- f["assert"] = ns.Assert
- f["fail"] = ns.Fail
- f["required"] = ns.Required
- f["ternary"] = ns.Ternary
- f["kind"] = ns.Kind
- f["isKind"] = ns.IsKind
- return f
-}
-
-// TestFuncs -
-type TestFuncs struct {
- ctx context.Context
-}
-
-// Assert -
-func (TestFuncs) Assert(args ...interface{}) (string, error) {
- input := conv.ToBool(args[len(args)-1])
- switch len(args) {
- case 1:
- return test.Assert(input, "")
- case 2:
- message, ok := args[0].(string)
- if !ok {
- return "", fmt.Errorf("at <1>: expected string; found %T", args[0])
- }
- return test.Assert(input, message)
- default:
- return "", fmt.Errorf("wrong number of args: want 1 or 2, got %d", len(args))
- }
-}
-
-// Fail -
-func (TestFuncs) Fail(args ...interface{}) (string, error) {
- switch len(args) {
- case 0:
- return "", test.Fail("")
- case 1:
- return "", test.Fail(conv.ToString(args[0]))
- default:
- return "", fmt.Errorf("wrong number of args: want 0 or 1, got %d", len(args))
- }
-}
-
-// Required -
-func (TestFuncs) Required(args ...interface{}) (interface{}, error) {
- switch len(args) {
- case 1:
- return test.Required("", args[0])
- case 2:
- message, ok := args[0].(string)
- if !ok {
- return nil, fmt.Errorf("at <1>: expected string; found %T", args[0])
- }
- return test.Required(message, args[1])
- default:
- return nil, fmt.Errorf("wrong number of args: want 1 or 2, got %d", len(args))
- }
-}
-
-// Ternary -
-func (TestFuncs) Ternary(tval, fval, b interface{}) interface{} {
- if conv.ToBool(b) {
- return tval
- }
- return fval
-}
-
-// Kind - return the kind of the argument
-func (TestFuncs) Kind(arg interface{}) string {
- return reflect.ValueOf(arg).Kind().String()
-}
-
-// IsKind - return whether or not the argument is of the given kind
-func (f TestFuncs) IsKind(kind string, arg interface{}) bool {
- k := f.Kind(arg)
- if kind == "number" {
- switch k {
- case "int", "int8", "int16", "int32", "int64",
- "uint", "uint8", "uint16", "uint32", "uint64", "uintptr",
- "float32", "float64",
- "complex64", "complex128":
- kind = k
- }
- }
- return k == kind
-}