aboutsummaryrefslogtreecommitdiff
path: root/internal/assert/assert.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/assert/assert.go')
-rw-r--r--internal/assert/assert.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/internal/assert/assert.go b/internal/assert/assert.go
index 84b6ecf..99af59c 100644
--- a/internal/assert/assert.go
+++ b/internal/assert/assert.go
@@ -36,3 +36,16 @@ func SliceEqual[V comparable](t testing.TB, actual []V, expected ...V) {
}
}
}
+
+// SliceDeepEqual is a test assertion.
+func SliceDeepEqual[V any](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 !reflect.DeepEqual(actual[idx], expected[idx]) {
+ t.Errorf("element %d: expected %#v, but got %#v", idx, expected[idx], actual[idx])
+ }
+ }
+}