That first example is deceptive. In this line:<p><pre><code> for i := 0; i <= n; i++ {
</code></pre>
The "<=" character just looks like a "<" character due to the typeface that the author chose. I'm going to assume that wasn't an accident because it perfectly masks the obvious bug in the for loop.<p>When I did a quick scan of that code it looked good to me. Then he claimed it should panic and I felt crazy. So I copy/pasted the code into an editor to see wtf was going on and sure enough it was "<=".
<p><pre><code> go test fuzz v1
string("000000000000000000000000000000Ö00000000000000000000000000000")
rune('\u0083')
int(60)
</code></pre>
Interesting that the minimization engine wasn't able to shrink this further.
It’s a bit surprising to have fuzzing as part of the standard tool chain, but not property based testing.<p>I guess we still need to rely on something like gopter.