Add utility functions for testing.
@@ -17,6 +17,8 @@ pkg testr =
const ok : (ctx : ctx# -> void)
const fail : (ctx : ctx#, msg : byte[:], args : ... -> void)
const check : (ctx : ctx#, cond : bool, msg : byte[:], args : ... -> void)
+ generic eq : (ctx : ctx#, a : @t, b : @t -> void) :: std.equatable @t
+ generic neq : (ctx : ctx#, a : @t, b : @t -> void) :: std.equatable @t
const softfail : (ctx : ctx#, msg : byte[:], args : ... -> void)
;;
@@ -56,6 +58,18 @@ const check = {ctx, cond, msg, args
;;
}
+generic eq = {ctx, a, b
+ if !std.eq(a, b)
+ fail(ctx, "{} != {}\n", a, b)
+ ;;
+}
+
+generic neq = {ctx, a, b
+ if std.eq(a, b)
+ fail(ctx, "{} != {}\n", a, b)
+ ;;
+}
+
const fail = {ctx, msg, args
var ap
