| ... | @@ -165,7 +165,7 @@ pub fn expectEqualSlices(comptime T: type, expected: []const T, actual: []const | ... | @@ -165,7 +165,7 @@ pub fn expectEqualSlices(comptime T: type, expected: []const T, actual: []const |
| 165 | } | 165 | } |
| 166 | var i: usize = 0; | 166 | var i: usize = 0; |
| 167 | while (i < expected.len) : (i += 1) { | 167 | while (i < expected.len) : (i += 1) { |
| 168 | if (expected[i] != actual[i]) { | 168 | if (!std.meta.eql(expected[i], actual[i])) { |
| 169 | std.debug.panic("index {} incorrect. expected {}, found {}", .{ i, expected[i], actual[i] }); | 169 | std.debug.panic("index {} incorrect. expected {}, found {}", .{ i, expected[i], actual[i] }); |
| 170 | } | 170 | } |
| 171 | } | 171 | } |
| ... | @@ -176,3 +176,17 @@ pub fn expectEqualSlices(comptime T: type, expected: []const T, actual: []const | ... | @@ -176,3 +176,17 @@ pub fn expectEqualSlices(comptime T: type, expected: []const T, actual: []const |
| 176 | pub fn expect(ok: bool) void { | 176 | pub fn expect(ok: bool) void { |
| 177 | if (!ok) @panic("test failure"); | 177 | if (!ok) @panic("test failure"); |
| 178 | } | 178 | } |
| | 179 | |
| | 180 | test "expectEqual nested array" { |
| | 181 | const a = [2][2]f32{ |
| | 182 | [_]f32{ 1.0, 0.0 }, |
| | 183 | [_]f32{ 0.0, 1.0 }, |
| | 184 | }; |
| | 185 | |
| | 186 | const b = [2][2]f32{ |
| | 187 | [_]f32{ 1.0, 0.0 }, |
| | 188 | [_]f32{ 0.0, 1.0 }, |
| | 189 | }; |
| | 190 | |
| | 191 | expectEqual(a, b); |
| | 192 | } |