2023-06-15 21:22:51 +08:00
|
|
|
//
|
|
|
|
// conv_helper_test.go
|
|
|
|
// Copyright (C) 2022 tiglog <me@tiglog.com>
|
|
|
|
//
|
|
|
|
// Distributed under terms of the MIT license.
|
|
|
|
//
|
|
|
|
|
|
|
|
package helper_test
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
|
|
|
"testing"
|
|
|
|
|
2023-06-15 21:38:12 +08:00
|
|
|
"git.hexq.cn/tiglog/golib/gtest"
|
|
|
|
"git.hexq.cn/tiglog/golib/helper"
|
2023-06-15 21:22:51 +08:00
|
|
|
)
|
|
|
|
|
|
|
|
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)
|
|
|
|
}
|