diff options
Diffstat (limited to 'internal/assert/assert.go')
| -rw-r--r-- | internal/assert/assert.go | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/internal/assert/assert.go b/internal/assert/assert.go index c82d35c..84b6ecf 100644 --- a/internal/assert/assert.go +++ b/internal/assert/assert.go @@ -23,3 +23,16 @@ func DeepEqual[V any](t testing.TB, actual, expected V) { t.Errorf("expected %#v, but got %#v", expected, actual) } } + +// SliceEqual is a test assertion. +func SliceEqual[V comparable](t testing.TB, actual []V, expected ...V) { + t.Helper() + if len(actual) != len(expected) { + t.Errorf("length mismatch: expected %#v, but got %#v", expected, actual) + } + for idx := range actual { + if actual[idx] != expected[idx] { + t.Errorf("element %d: expected %#v, but got %#v", idx, expected[idx], actual[idx]) + } + } +} |
