blob: 4feb41a30f1e9ee457c98fc7578a6edea1c9040e [file] [log] [blame]
[short] skip
[!fuzz-instrumented] skip
env GOCACHE=$WORK/cache
! go test -fuzz=FuzzDead -v
# This is a somewhat inexact check, but since we don't prefix the error with anything
# and as the error suffix is platform dependent, this is the best we can do. In the
# deadlock failure case, the test will just deadlock and timeout anyway, so it should
# be clear that that failure mode is different.
stdout 'open'
-- go.mod --
module test
-- cov_test.go --
package dead
import (
"os"
"path/filepath"
"testing"
"time"
)
func FuzzDead(f *testing.F) {
go func() {
c := filepath.Join(os.Getenv("GOCACHE"), "fuzz", "test", "FuzzDead")
t := time.NewTicker(time.Second)
for range t.C {
files, _ := os.ReadDir(c)
if len(files) > 0 {
os.RemoveAll(c)
}
}
}()
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] == ')' {
return
}
})
}