From 3cc0fc601af62adebf6b9f3bb1a241fa8a501d0b Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 20 Sep 2025 14:38:01 -0700 Subject: [PATCH] std.json: delete test tightly coupled to ArrayList growth This test works by assuming that std.ArrayList will grow with a specific capacity increasing pattern, which is an invalid assumption. Delete the offending test. --- lib/std/json/scanner_test.zig | 27 --------------------------- lib/std/json/static_test.zig | 2 +- 2 files changed, 1 insertion(+), 28 deletions(-) diff --git a/lib/std/json/scanner_test.zig b/lib/std/json/scanner_test.zig index ae954a88f0..5b4bfa532a 100644 --- a/lib/std/json/scanner_test.zig +++ b/lib/std/json/scanner_test.zig @@ -431,33 +431,6 @@ test "skipValue" { try std.testing.expectError(error.SyntaxError, testSkipValue("[102, 111, 111}")); } -fn testEnsureStackCapacity(do_ensure: bool) !void { - var fail_alloc = std.testing.FailingAllocator.init(std.testing.allocator, .{ .fail_index = 1 }); - const failing_allocator = fail_alloc.allocator(); - - const nestings = 2049; // intentionally not a power of 2. - var input_string: std.ArrayListUnmanaged(u8) = .empty; - try input_string.appendNTimes(std.testing.allocator, '[', nestings); - try input_string.appendNTimes(std.testing.allocator, ']', nestings); - defer input_string.deinit(std.testing.allocator); - - var scanner = Scanner.initCompleteInput(failing_allocator, input_string.items); - defer scanner.deinit(); - - if (do_ensure) { - try scanner.ensureTotalStackCapacity(nestings); - } - - try scanner.skipValue(); - try std.testing.expectEqual(Token.end_of_document, try scanner.next()); -} -test "ensureTotalStackCapacity" { - // Once to demonstrate failure. - try std.testing.expectError(error.OutOfMemory, testEnsureStackCapacity(false)); - // Then to demonstrate it works. - try testEnsureStackCapacity(true); -} - fn testDiagnosticsFromSource(expected_error: ?anyerror, line: u64, col: u64, byte_offset: u64, source: anytype) !void { var diagnostics = Diagnostics{}; source.enableDiagnostics(&diagnostics); diff --git a/lib/std/json/static_test.zig b/lib/std/json/static_test.zig index 735ccd82e1..805d2840a1 100644 --- a/lib/std/json/static_test.zig +++ b/lib/std/json/static_test.zig @@ -914,7 +914,7 @@ test "parse at comptime" { uptime: u64, }; const config = comptime x: { - var buf: [256]u8 = undefined; + var buf: [300]u8 = undefined; var fba = std.heap.FixedBufferAllocator.init(&buf); const res = parseFromSliceLeaky(Config, fba.allocator(), doc, .{}); // Assert no error can occur since we are