Refactor a bit more for testing, update tests
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
package main
|
||||
|
||||
import "testing"
|
||||
|
||||
func TestUtilEqualSliceString(t *testing.T) {
|
||||
cases := []struct {
|
||||
a, b []string
|
||||
expected bool
|
||||
}{
|
||||
// Equal cases
|
||||
{nil, nil, true},
|
||||
{nil, []string{}, true},
|
||||
{[]string{}, nil, true},
|
||||
{[]string{"a"}, []string{"a"}, true},
|
||||
// Inequal cases
|
||||
{nil, []string{"b"}, false},
|
||||
{[]string{"a"}, nil, false},
|
||||
{[]string{"a"}, []string{"b"}, false},
|
||||
{[]string{"a"}, []string{"a", "b"}, false},
|
||||
{[]string{"a", "b"}, []string{"b"}, false},
|
||||
}
|
||||
|
||||
for _, c := range cases {
|
||||
actual := EqualSliceString(c.a, c.b)
|
||||
if actual != c.expected {
|
||||
t.Errorf(
|
||||
"EqualSliceString(%v, %v), expected=%v actual=%v",
|
||||
c.a, c.b, c.expected, actual,
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user