From 7c174976232e2a667e82c56ee1868a41e0662ed6 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Sun, 20 Nov 2022 19:37:23 -0800 Subject: [PATCH] test that quoting config values is okay --- src/cli_args.zig | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/cli_args.zig b/src/cli_args.zig index c36087cfe..3c418af28 100644 --- a/src/cli_args.zig +++ b/src/cli_args.zig @@ -204,6 +204,26 @@ test "parse: simple" { try testing.expect(!data.@"b-f"); } +test "parse: quoted value" { + const testing = std.testing; + + var data: struct { + a: u8 = 0, + b: []const u8 = "", + _arena: ?ArenaAllocator = null, + } = .{}; + defer if (data._arena) |arena| arena.deinit(); + + var iter = try std.process.ArgIteratorGeneral(.{}).init( + testing.allocator, + "--a=\"42\" --b=\"hello!\"", + ); + defer iter.deinit(); + try parse(@TypeOf(data), testing.allocator, &data, &iter); + try testing.expectEqual(@as(u8, 42), data.a); + try testing.expectEqualStrings("hello!", data.b); +} + test "parseIntoField: string" { const testing = std.testing; var arena = ArenaAllocator.init(testing.allocator);