aboutsummaryrefslogtreecommitdiff
path: root/lib/std/testing.zig
diff options
context:
space:
mode:
Diffstat (limited to 'lib/std/testing.zig')
-rw-r--r--lib/std/testing.zig17
1 files changed, 16 insertions, 1 deletions
diff --git a/lib/std/testing.zig b/lib/std/testing.zig
index f8247b5a9d..8a4491d1d7 100644
--- a/lib/std/testing.zig
+++ b/lib/std/testing.zig
@@ -56,7 +56,6 @@ pub fn expectEqual(expected: var, actual: @TypeOf(expected)) void {
.EnumLiteral,
.Enum,
.Fn,
- .Vector,
.ErrorSet,
=> {
if (actual != expected) {
@@ -88,6 +87,15 @@ pub fn expectEqual(expected: var, actual: @TypeOf(expected)) void {
.Array => |array| expectEqualSlices(array.child, &expected, &actual),
+ .Vector => |vectorType| {
+ var i: usize = 0;
+ while (i < vectorType.len) : (i += 1) {
+ if (!std.meta.eql(expected[i], actual[i])) {
+ std.debug.panic("index {} incorrect. expected {}, found {}", .{ i, expected[i], actual[i] });
+ }
+ }
+ },
+
.Struct => |structType| {
inline for (structType.fields) |field| {
expectEqual(@field(expected, field.name), @field(actual, field.name));
@@ -202,3 +210,10 @@ test "expectEqual nested array" {
expectEqual(a, b);
}
+
+test "expectEqual vector" {
+ var a = @splat(4, @as(u32, 4));
+ var b = @splat(4, @as(u32, 4));
+
+ expectEqual(a, b);
+}