Commit 14ba3bd9a1

Nir Lahad <nirlah@gmail.com>
2025-11-25 14:39:07
std.testing: Fix expectEqualDeep formatted enum (#25960)
1 parent e4be00f
Changed files (1)
lib
lib/std/testing.zig
@@ -760,7 +760,7 @@ fn expectEqualDeepInner(comptime T: type, expected: T, actual: T) error{TestExpe
         .error_set,
         => {
             if (actual != expected) {
-                print("expected {}, found {}\n", .{ expected, actual });
+                print("expected {any}, found {any}\n", .{ expected, actual });
                 return error.TestExpectedEqual;
             }
         },
@@ -923,6 +923,18 @@ test "expectEqualDeep primitive type" {
         }.foo;
         try expectEqualDeep(fnType, fnType);
     }
+    // enum with formatter
+    {
+        const TestEnum = enum {
+            a,
+            b,
+
+            pub fn format(self: @This(), writer: *std.Io.Writer) !void {
+                try writer.writeAll(@tagName(self));
+            }
+        };
+        try expectEqualDeep(TestEnum.b, TestEnum.b);
+    }
 }
 
 test "expectEqualDeep pointer" {