mirror of
https://github.com/jefferyjob/go-easy-utils.git
synced 2024-05-03 11:34:53 +08:00
e9cc195c39
example docs
99 lines
1.8 KiB
Go
99 lines
1.8 KiB
Go
package strUtil
|
|
|
|
import "testing"
|
|
|
|
func TestStrToUint(t *testing.T) {
|
|
tests := []struct {
|
|
input string
|
|
expected uint
|
|
}{
|
|
{"123", 123},
|
|
{"0", 0},
|
|
{"-1", 0},
|
|
}
|
|
|
|
for _, test := range tests {
|
|
result := StrToUint(test.input)
|
|
if result != test.expected {
|
|
t.Errorf("StrToUint(%s) = %d; expected %d", test.input, result, test.expected)
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestStrToUint8(t *testing.T) {
|
|
tests := []struct {
|
|
input string
|
|
expected uint8
|
|
}{
|
|
{"123", 123},
|
|
{"0", 0},
|
|
{"-1", 0},
|
|
{"256", 0},
|
|
}
|
|
|
|
for _, test := range tests {
|
|
result := StrToUint8(test.input)
|
|
if result != test.expected {
|
|
t.Errorf("StrToUint8(%s) = %d; expected %d", test.input, result, test.expected)
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestStrToUint16(t *testing.T) {
|
|
tests := []struct {
|
|
input string
|
|
expected uint16
|
|
}{
|
|
{"12345", 12345},
|
|
{"0", 0},
|
|
{"-1", 0},
|
|
{"65536", 0},
|
|
}
|
|
|
|
for _, test := range tests {
|
|
result := StrToUint16(test.input)
|
|
if result != test.expected {
|
|
t.Errorf("StrToUint16(%s) = %d; expected %d", test.input, result, test.expected)
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestStrToUint32(t *testing.T) {
|
|
tests := []struct {
|
|
input string
|
|
expected uint32
|
|
}{
|
|
{"1234567", 1234567},
|
|
{"0", 0},
|
|
{"-1", 0},
|
|
{"4294967296", 0},
|
|
}
|
|
|
|
for _, test := range tests {
|
|
result := StrToUint32(test.input)
|
|
if result != test.expected {
|
|
t.Errorf("StrToUint32(%s) = %d; expected %d", test.input, result, test.expected)
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestStrToUint64(t *testing.T) {
|
|
testCases := []struct {
|
|
input string
|
|
expectedOutput uint64
|
|
}{
|
|
{"12345", 12345},
|
|
{"0", 0},
|
|
{"18446744073709551615", 18446744073709551615},
|
|
{"-1", 0},
|
|
{"not a number", 0},
|
|
}
|
|
|
|
for _, tc := range testCases {
|
|
output := StrToUint64(tc.input)
|
|
if output != tc.expectedOutput {
|
|
t.Errorf("StrToUint64(%q) = %d; want %d", tc.input, output, tc.expectedOutput)
|
|
}
|
|
}
|
|
}
|