From 21550bb7cd5596e24a623f5ae1374502e879b553 Mon Sep 17 00:00:00 2001 From: xackus <14938807+xackus@users.noreply.github.com> Date: Sat, 5 Dec 2020 11:10:44 +0100 Subject: [PATCH] std.json: unreachable -> expect in tests --- lib/std/json/test.zig | 55 +++++++++++++++++-------------------------- 1 file changed, 21 insertions(+), 34 deletions(-) diff --git a/lib/std/json/test.zig b/lib/std/json/test.zig index bce9ed448d..f1f351e84f 100644 --- 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 ok(comptime s: []const u8) void { + testing.expect(json.validate(s)); + + testNonStreaming(s) catch testing.expect(false); +} + fn err(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 |_| {} + 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); + _ = json.validate(s); - var p = std.json.Parser.init(std.testing.allocator, false); - defer p.deinit(); - - var tree = p.parse(s) catch return; - defer tree.deinit(); + testNonStreaming(s) catch {}; } fn anyStreamingErrNonStreaming(comptime s: []const u8) void { - _ = std.json.validate(s); + _ = json.validate(s); - var p = std.json.Parser.init(std.testing.allocator, false); - defer p.deinit(); - - if (p.parse(s)) |_| { - unreachable; - } else |_| {} + testNonStreaming(s) catch return; + testing.expect(false); } ////////////////////////////////////////////////////////////////////////////////////////////////////