// // conv_helper_test.go // Copyright (C) 2022 tiglog // // Distributed under terms of the MIT license. // package helper_test import ( "fmt" "testing" "git.hexq.cn/tiglog/golib/gtest" "git.hexq.cn/tiglog/golib/helper" ) func TestAnyToInt(t *testing.T) { var i1 int8 = 11 v1, err := helper.AnyToInt(i1, 0) gtest.NoError(t, err) gtest.Equal(t, 11, v1) fmt.Printf("v1 %d type is %T\n", v1, v1) var i2 int16 = 22 v2, err := helper.AnyToInt(i2, 0) gtest.NoError(t, err) gtest.Equal(t, 22, v2) fmt.Printf("v2 %d type is %T\n", v2, v2) var i3 int32 = 33 v3, err := helper.AnyToInt(i3, 0) gtest.NoError(t, err) gtest.Equal(t, 33, v3) fmt.Printf("v3 %d type is %T\n", v3, v3) var i4 int64 = 44 v4, err := helper.AnyToInt(i4, 0) gtest.NoError(t, err) gtest.Equal(t, 44, v4) fmt.Printf("v4 %d type is %T\n", v4, v4) var i5 int = 55 v5, err := helper.AnyToInt(i5, 0) gtest.NoError(t, err) gtest.Equal(t, 55, v5) fmt.Printf("v5 %d type is %T\n", v5, v5) var i6 string = "66" v6, err := helper.AnyToInt(i6, 0) gtest.NoError(t, err) gtest.Equal(t, 66, v6) fmt.Printf("v6 %d type is %T\n", v6, v6) var i7 float32 = 77 v7, err := helper.AnyToInt(i7, 0) gtest.NoError(t, err) gtest.Equal(t, 77, v7) fmt.Printf("v7 %d type is %T\n", v7, v7) var i8 float64 = 88.8 v8, err := helper.AnyToInt(i8, 0) gtest.NoError(t, err) gtest.Equal(t, 88, v8) fmt.Printf("v8 %d type is %T\n", v8, v8) } func TestAnyToFloat(t *testing.T) { var f1 int8 = 11 v1, err := helper.AnyToFloat(f1, 0) gtest.NoError(t, err) gtest.Equal(t, float64(11), v1) fmt.Printf("v1 %f type is %T\n", v1, v1) var f2 int16 = 22 v2, err := helper.AnyToFloat(f2, 0) gtest.NoError(t, err) gtest.Equal(t, float64(22), v2) fmt.Printf("v2 %f type is %T\n", v2, v2) var f3 int32 = 33 v3, err := helper.AnyToFloat(f3, 0) gtest.NoError(t, err) gtest.Equal(t, float64(33), v3) fmt.Printf("v3 %f type is %T\n", v3, v3) var f4 int64 = 44 v4, err := helper.AnyToFloat(f4, 0) gtest.NoError(t, err) gtest.Equal(t, float64(44), v4) fmt.Printf("v4 %f type is %T\n", v4, v4) var f5 int = 55 v5, err := helper.AnyToFloat(f5, 0) gtest.NoError(t, err) gtest.Equal(t, float64(55), v5) fmt.Printf("v5 %f type is %T\n", v5, v5) var f6 string = "66" v6, err := helper.AnyToFloat(f6, 0) gtest.NoError(t, err) gtest.Equal(t, float64(66), v6) fmt.Printf("v6 %f type is %T\n", v6, v6) var f7 float32 = 77 v7, err := helper.AnyToFloat(f7, 0) gtest.NoError(t, err) gtest.Equal(t, float64(77), v7) gtest.Equal(t, 77.0, v7) fmt.Printf("v7 %f type is %T\n", v7, v7) var f8 float64 = 88.8 v8, err := helper.AnyToFloat(f8, 0) gtest.NoError(t, err) gtest.Equal(t, 88.8, v8) fmt.Printf("v8 %f type is %T\n", v8, v8) } func TestAnyToString(t *testing.T) { var s1 int8 = 11 v1, err := helper.AnyToString(s1, "") gtest.NoError(t, err) gtest.Equal(t, "11", v1) fmt.Printf("v1 %s type is %T\n", v1, v1) var s2 int16 = 22 v2, err := helper.AnyToString(s2, "") gtest.NoError(t, err) gtest.Equal(t, "22", v2) fmt.Printf("v2 %s type is %T\n", v2, v2) var s5 int = 55 v5, err := helper.AnyToString(s5, "") gtest.NoError(t, err) gtest.Equal(t, "55", v5) fmt.Printf("v5 %s type is %T\n", v5, v5) var s6 string = "66" v6, err := helper.AnyToString(s6, "") gtest.NoError(t, err) gtest.Equal(t, "66", v6) fmt.Printf("v6 %s type is %T\n", v6, v6) var s7 float32 = 77 v7, err := helper.AnyToString(s7, "") gtest.NoError(t, err) gtest.Equal(t, "77", v7) fmt.Printf("v7 %s type is %T\n", v7, v7) var s8 float64 = 88.8 v8, err := helper.AnyToString(s8, "") gtest.NoError(t, err) gtest.Equal(t, "88.8", v8) fmt.Printf("v8 %s type is %T\n", v8, v8) }