commit 21550bb7cd5596e24a623f5ae1374502e879b553 (tree)
parent 8ac711596d3fd698bf3ee84ec2514c8c84103680
Author: xackus <14938807+xackus@users.noreply.github.com>
Date: Sat, 5 Dec 2020 11:10:44 +0100
std.json: unreachable -> expect in tests
Diffstat:
1 file changed, 21 insertions(+), 34 deletions(-)
diff --git a/lib/std/json/test.zig b/lib/std/json/test.zig
@@ -9,60 +9,47 @@
// Read also http://seriot.ch/parsing_json.php for a good overview.
const std = @import("../std.zig");
+const json = std.json;
+const testing = std.testing;
-fn ok(comptime s: []const u8) void {
- std.testing.expect(std.json.validate(s));
-
- var p = std.json.Parser.init(std.testing.allocator, false);
+fn testNonStreaming(comptime s: []const u8) !void {
+ var p = json.Parser.init(testing.allocator, false);
defer p.deinit();
- var tree = p.parse(s) catch unreachable;
+ var tree = try p.parse(s);
defer tree.deinit();
}
-fn err(comptime s: []const u8) void {
- std.testing.expect(!std.json.validate(s));
+fn ok(comptime s: []const u8) void {
+ testing.expect(json.validate(s));
- var p = std.json.Parser.init(std.testing.allocator, false);
- defer p.deinit();
+ testNonStreaming(s) catch testing.expect(false);
+}
+
+fn err(comptime s: []const u8) void {
+ testing.expect(!json.validate(s));
- if (p.parse(s)) |_| {
- unreachable;
- } else |_| {}
+ testNonStreaming(s) catch return;
+ testing.expect(false);
}
fn utf8Error(comptime s: []const u8) void {
- std.testing.expect(!std.json.validate(s));
+ testing.expect(!json.validate(s));
- var p = std.json.Parser.init(std.testing.allocator, false);
- defer p.deinit();
-
- if (p.parse(s)) |_| {
- unreachable;
- } else |e| {
- std.testing.expect(e == error.InvalidUtf8Byte);
- }
+ testing.expectError(error.InvalidUtf8Byte, testNonStreaming(s));
}
fn any(comptime s: []const u8) void {
- _ = std.json.validate(s);
-
- var p = std.json.Parser.init(std.testing.allocator, false);
- defer p.deinit();
+ _ = json.validate(s);
- var tree = p.parse(s) catch return;
- defer tree.deinit();
+ testNonStreaming(s) catch {};
}
fn anyStreamingErrNonStreaming(comptime s: []const u8) void {
- _ = std.json.validate(s);
-
- var p = std.json.Parser.init(std.testing.allocator, false);
- defer p.deinit();
+ _ = json.validate(s);
- if (p.parse(s)) |_| {
- unreachable;
- } else |_| {}
+ testNonStreaming(s) catch return;
+ testing.expect(false);
}
////////////////////////////////////////////////////////////////////////////////////////////////////