Fuzzion
https://codeberg.org/benburkert/fuzzion
Fuzzion is a testing toolkit to aid in implementing correct std.Io.Reader and std.Io.Writer implementations. The Reader & Writer interfaces are complex and can be tricky to implement correctly. Fuzzion helps you verify that your implementation is correct and free of bugs, edge cases, and infinite loops through fuzzing. Fuzz testing is an automated way to generate test cases by mutating random input data. Fuzzion uses the std.testing.fuzz API to test Io.Reader/Io.Writer pair(s).
Here is an example that tests a base64 Reader/Writer.
And here’s another example that tests two TLS clients & a server implementation.
The toolkit also helps you reproduce failures by printing out a pseudocode scenario, check out the Usage section of the README for an example.
Supported Zig versions
Until 0.17 is released, only the latest main branch of zig is supported.