From 72b01dcfc1be61166f77bbc12ce06c18bdd73b43 Mon Sep 17 00:00:00 2001 From: Anevo Date: Tue, 27 Mar 2018 10:02:43 -0400 Subject: [PATCH] Tested functions in utils/reflect.go --- utils/reflect_test.go | 75 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) diff --git a/utils/reflect_test.go b/utils/reflect_test.go index e54b94f1f..16c4777df 100644 --- a/utils/reflect_test.go +++ b/utils/reflect_test.go @@ -325,3 +325,78 @@ func TestIfaceAsFloat64(t *testing.T) { t.Error("expecting error") } } + +func TestIfaceAsInt64(t *testing.T) { + eInt := int64(3) + val := interface{}(3) + if itmConvert, err := IfaceAsInt64(val); err != nil { + t.Error(err) + } else if itmConvert != eInt { + t.Errorf("received: %+v", itmConvert) + } + val = interface{}(time.Duration(3)) + if itmConvert, err := IfaceAsInt64(val); err != nil { + t.Error(err) + } else if itmConvert != eInt { + t.Errorf("received: %+v", itmConvert) + } + val = interface{}("3") + if itmConvert, err := IfaceAsInt64(val); err != nil { + t.Error(err) + } else if itmConvert != eInt { + t.Errorf("received: %+v", itmConvert) + } + val = interface{}(int64(3)) + if itmConvert, err := IfaceAsInt64(val); err != nil { + t.Error(err) + } else if itmConvert != eInt { + t.Errorf("received: %+v", itmConvert) + } + val = interface{}("This is not an integer") + if _, err := IfaceAsInt64(val); err == nil { + t.Error("expecting error") + } +} + +func TestIfaceAsBool(t *testing.T) { + val := interface{}(true) + if itmConvert, err := IfaceAsBool(val); err != nil { + t.Error(err) + } else if itmConvert != true { + t.Errorf("received: %+v", itmConvert) + } + val = interface{}("true") + if itmConvert, err := IfaceAsBool(val); err != nil { + t.Error(err) + } else if itmConvert != true { + t.Errorf("received: %+v", itmConvert) + } + val = interface{}(0) + if itmConvert, err := IfaceAsBool(val); err != nil { + t.Error(err) + } else if itmConvert != false { + t.Errorf("received: %+v", itmConvert) + } + val = interface{}(1) + if itmConvert, err := IfaceAsBool(val); err != nil { + t.Error(err) + } else if itmConvert != true { + t.Errorf("received: %+v", itmConvert) + } + val = interface{}(0.0) + if itmConvert, err := IfaceAsBool(val); err != nil { + t.Error(err) + } else if itmConvert != false { + t.Errorf("received: %+v", itmConvert) + } + val = interface{}(1.0) + if itmConvert, err := IfaceAsBool(val); err != nil { + t.Error(err) + } else if itmConvert != true { + t.Errorf("received: %+v", itmConvert) + } + val = interface{}("This is not a bool") + if _, err := IfaceAsBool(val); err == nil { + t.Error("expecting error") + } +}