| # Test that coverage instrumentation is working. Without the instrumentation | |
| # it is _extremely_ unlikely that the fuzzer would produce this particular | |
| # input in any reasonable amount of time. | |
| [short] skip | |
| [!fuzz-instrumented] skip | |
| env GOCACHE=$WORK/cache | |
| # TODO(#51484): enabled debugging info to help diagnose a deadlock in the fuzzer | |
| env GODEBUG=fuzzdebug=1 | |
| ! go test -fuzz=FuzzCov -v | |
| ! stderr 'cov instrumentation working' | |
| -- go.mod -- | |
| module test | |
| -- cov_test.go -- | |
| package cov | |
| import "testing" | |
| func FuzzCov(f *testing.F) { | |
| f.Fuzz(func(t *testing.T, b []byte) { | |
| if len(b) == 8 && | |
| b[0] == 'h' && | |
| b[1] == 'e' && | |
| b[2] == 'l' && | |
| b[3] == 'l' && | |
| b[4] == 'o' && | |
| b[5] == ' ' && | |
| b[6] == ':' && | |
| b[7] == ')' { | |
| panic("cov instrumentation working") | |
| } | |
| }) | |
| } | |