provided template function eq,lt unit test.
This commit is contained in:
parent
c8917f572f
commit
debd4fca01
@ -380,21 +380,213 @@ func TestMapGet(t *testing.T) {
|
||||
}
|
||||
|
||||
func Test_eq(t *testing.T) {
|
||||
var a uint = 1
|
||||
var b int32 = 1
|
||||
if res, err := eq(a, b); err != nil {
|
||||
if !res {
|
||||
t.Error("uint(1) and int32(1) should not be eq")
|
||||
tests := []struct {
|
||||
a interface{}
|
||||
b interface{}
|
||||
result bool
|
||||
}{
|
||||
{uint8(1), int(1), true},
|
||||
{uint8(3), int(1), false},
|
||||
{uint16(1), int(1), true},
|
||||
{uint16(3), int(1), false},
|
||||
{uint32(1), int(1), true},
|
||||
{uint32(3), int(1), false},
|
||||
{uint(1), int(1), true},
|
||||
{uint(3), int(1), false},
|
||||
{uint64(1), int(1), true},
|
||||
{uint64(3), int(1), false},
|
||||
|
||||
|
||||
{int8(-1), uint(1), false},
|
||||
{int16(-2), uint(1), false},
|
||||
{int32(-3), uint(1), false},
|
||||
{int64(-4), uint(1), false},
|
||||
{int8(1), uint(1), true},
|
||||
{int16(1), uint(1), true},
|
||||
{int32(1), uint(1), true},
|
||||
{int64(1), uint(1), true},
|
||||
|
||||
{int8(-1), uint8(1), false},
|
||||
{int16(-2), uint8(1), false},
|
||||
{int32(-3), uint8(1), false},
|
||||
{int64(-4), uint8(1), false},
|
||||
{int8(1), uint8(1), true},
|
||||
{int16(1), uint8(1), true},
|
||||
{int32(1), uint8(1), true},
|
||||
{int64(1), uint8(1), true},
|
||||
|
||||
{int8(-1), uint16(1), false},
|
||||
{int16(-2), uint16(1), false},
|
||||
{int32(-3), uint16(1), false},
|
||||
{int64(-4), uint16(1), false},
|
||||
{int8(1), uint16(1), true},
|
||||
{int16(1), uint16(1), true},
|
||||
{int32(1), uint16(1), true},
|
||||
{int64(1), uint16(1), true},
|
||||
|
||||
{int8(-1), uint32(1), false},
|
||||
{int16(-2), uint32(1), false},
|
||||
{int32(-3), uint32(1), false},
|
||||
{int64(-4), uint32(1), false},
|
||||
{int8(1), uint32(1), true},
|
||||
{int16(1), uint32(1), true},
|
||||
{int32(1), uint32(1), true},
|
||||
{int64(1), uint32(1), true},
|
||||
|
||||
{int8(-1), uint64(1), false},
|
||||
{int16(-2), uint64(1), false},
|
||||
{int32(-3), uint64(1), false},
|
||||
{int64(-4), uint64(1), false},
|
||||
{int8(1), uint64(1), true},
|
||||
{int16(1), uint64(1), true},
|
||||
{int32(1), uint64(1), true},
|
||||
{int64(1), uint64(1), true},
|
||||
}
|
||||
for _, test := range tests {
|
||||
if res, err := eq(test.a, test.b); err != nil {
|
||||
if res != test.result {
|
||||
t.Errorf("a:%v(%T) equals b:%v(%T) should be %v", test.a, test.a, test.b, test.b, test.result)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func Test_lt(t *testing.T) {
|
||||
var a uint = 1
|
||||
var b int32 = 2
|
||||
if res, err := lt(a, b); err != nil {
|
||||
if !res {
|
||||
t.Error("uint(1) not lt int32(2)")
|
||||
tests := []struct {
|
||||
a interface{}
|
||||
b interface{}
|
||||
result bool
|
||||
}{
|
||||
{uint8(1), int(3), true},
|
||||
{uint8(1), int(1), false},
|
||||
{uint8(3), int(1), false},
|
||||
{uint16(1), int(3), true},
|
||||
{uint16(1), int(1), false},
|
||||
{uint16(3), int(1), false},
|
||||
{uint32(1), int(3), true},
|
||||
{uint32(1), int(1), false},
|
||||
{uint32(3), int(1), false},
|
||||
{uint(1), int(3), true},
|
||||
{uint(1), int(1), false},
|
||||
{uint(3), int(1), false},
|
||||
{uint64(1), int(3), true},
|
||||
{uint64(1), int(1), false},
|
||||
{uint64(3), int(1), false},
|
||||
{int(-1), int(1), true},
|
||||
{int(1), int(1), false},
|
||||
{int(1), int(3), true},
|
||||
{int(3), int(1), false},
|
||||
|
||||
{int8(-1), uint(1), true},
|
||||
{int8(1), uint(1), false},
|
||||
{int8(1), uint(3), true},
|
||||
{int8(3), uint(1), false},
|
||||
{int16(-1), uint(1), true},
|
||||
{int16(1), uint(1), false},
|
||||
{int16(1), uint(3), true},
|
||||
{int16(3), uint(1), false},
|
||||
{int32(-1), uint(1), true},
|
||||
{int32(1), uint(1), false},
|
||||
{int32(1), uint(3), true},
|
||||
{int32(3), uint(1), false},
|
||||
{int64(-1), uint(1), true},
|
||||
{int64(1), uint(1), false},
|
||||
{int64(1), uint(3), true},
|
||||
{int64(3), uint(1), false},
|
||||
{int(-1), uint(1), true},
|
||||
{int(1), uint(1), false},
|
||||
{int(1), uint(3), true},
|
||||
{int(3), uint(1), false},
|
||||
|
||||
{int8(-1), uint8(1), true},
|
||||
{int8(1), uint8(1), false},
|
||||
{int8(1), uint8(3), true},
|
||||
{int8(3), uint8(1), false},
|
||||
{int16(-1), uint8(1), true},
|
||||
{int16(1), uint8(1), false},
|
||||
{int16(1), uint8(3), true},
|
||||
{int16(3), uint8(1), false},
|
||||
{int32(-1), uint8(1), true},
|
||||
{int32(1), uint8(1), false},
|
||||
{int32(1), uint8(3), true},
|
||||
{int32(3), uint8(1), false},
|
||||
{int64(-1), uint8(1), true},
|
||||
{int64(1), uint8(1), false},
|
||||
{int64(1), uint8(3), true},
|
||||
{int64(3), uint8(1), false},
|
||||
{int(-1), uint8(1), true},
|
||||
{int(1), uint8(1), false},
|
||||
{int(1), uint8(3), true},
|
||||
{int(3), uint8(1), false},
|
||||
|
||||
{int8(-1), uint16(1), true},
|
||||
{int8(1), uint16(1), false},
|
||||
{int8(1), uint16(3), true},
|
||||
{int8(3), uint16(1), false},
|
||||
{int16(-1), uint16(1), true},
|
||||
{int16(1), uint16(1), false},
|
||||
{int16(1), uint16(3), true},
|
||||
{int16(3), uint16(1), false},
|
||||
{int32(-1), uint16(1), true},
|
||||
{int32(1), uint16(1), false},
|
||||
{int32(1), uint16(3), true},
|
||||
{int32(3), uint16(1), false},
|
||||
{int64(-1), uint16(1), true},
|
||||
{int64(1), uint16(1), false},
|
||||
{int64(1), uint16(3), true},
|
||||
{int64(3), uint16(1), false},
|
||||
{int(-1), uint16(1), true},
|
||||
{int(1), uint16(1), false},
|
||||
{int(1), uint16(3), true},
|
||||
{int(3), uint16(1), false},
|
||||
|
||||
{int8(-1), uint32(1), true},
|
||||
{int8(1), uint32(1), false},
|
||||
{int8(1), uint32(3), true},
|
||||
{int8(3), uint32(1), false},
|
||||
{int16(-1), uint32(1), true},
|
||||
{int16(1), uint32(1), false},
|
||||
{int16(1), uint32(3), true},
|
||||
{int16(3), uint32(1), false},
|
||||
{int32(-1), uint32(1), true},
|
||||
{int32(1), uint32(1), false},
|
||||
{int32(1), uint32(3), true},
|
||||
{int32(3), uint32(1), false},
|
||||
{int64(-1), uint32(1), true},
|
||||
{int64(1), uint32(1), false},
|
||||
{int64(1), uint32(3), true},
|
||||
{int64(3), uint32(1), false},
|
||||
{int(-1), uint32(1), true},
|
||||
{int(1), uint32(1), false},
|
||||
{int(1), uint32(3), true},
|
||||
{int(3), uint32(1), false},
|
||||
|
||||
{int8(-1), uint64(1), true},
|
||||
{int8(1), uint64(1), false},
|
||||
{int8(1), uint64(3), true},
|
||||
{int8(3), uint64(1), false},
|
||||
{int16(-1), uint64(1), true},
|
||||
{int16(1), uint64(1), false},
|
||||
{int16(1), uint64(3), true},
|
||||
{int16(3), uint64(1), false},
|
||||
{int32(-1), uint64(1), true},
|
||||
{int32(1), uint64(1), false},
|
||||
{int32(1), uint64(3), true},
|
||||
{int32(3), uint64(1), false},
|
||||
{int64(-1), uint64(1), true},
|
||||
{int64(1), uint64(1), false},
|
||||
{int64(1), uint64(3), true},
|
||||
{int64(3), uint64(1), false},
|
||||
{int(-1), uint64(1), true},
|
||||
{int(1), uint64(1), false},
|
||||
{int(1), uint64(3), true},
|
||||
{int(3), uint64(1), false},
|
||||
}
|
||||
for _, test := range tests {
|
||||
if res, err := lt(test.a, test.b); err != nil {
|
||||
if res != test.result {
|
||||
t.Errorf("a:%v(%T) lt b:%v(%T) should be %v", test.a, test.a, test.b, test.b, test.result)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user