| [!fuzz] skip |
| [short] skip |
| |
| # Run chatty fuzz targets with an error. |
| ! go test -v chatty_error_fuzz_test.go |
| ! stdout '^ok' |
| stdout 'FAIL' |
| stdout 'error in target' |
| |
| # Run chatty fuzz targets with a fatal. |
| ! go test -v chatty_fatal_fuzz_test.go |
| ! stdout '^ok' |
| stdout 'FAIL' |
| stdout 'fatal in target' |
| |
| # Run chatty fuzz target with a panic |
| ! go test -v chatty_panic_fuzz_test.go |
| ! stdout ^ok |
| stdout FAIL |
| stdout 'this is bad' |
| |
| # Run skipped chatty fuzz targets. |
| go test -v chatty_skipped_fuzz_test.go |
| stdout ok |
| stdout SKIP |
| ! stdout FAIL |
| |
| # Run successful chatty fuzz targets. |
| go test -v chatty_fuzz_test.go |
| stdout ok |
| stdout PASS |
| stdout 'all good here' |
| ! stdout FAIL |
| |
| # Fuzz successful chatty fuzz target that includes a separate unit test. |
| go test -v chatty_with_test_fuzz_test.go -fuzz=Fuzz -fuzztime=1x |
| stdout ok |
| stdout PASS |
| ! stdout FAIL |
| # TODO: It's currently the case that it's logged twice. Fix that, and change |
| # this check to verify it. |
| stdout 'all good here' |
| # Verify that the unit test is only run once. |
| ! stdout '(?s)logged foo.*logged foo' |
| |
| -- chatty_error_fuzz_test.go -- |
| package chatty_error_fuzz |
| |
| import "testing" |
| |
| func Fuzz(f *testing.F) { |
| f.Error("error in target") |
| } |
| |
| -- chatty_fatal_fuzz_test.go -- |
| package chatty_fatal_fuzz |
| |
| import "testing" |
| |
| func Fuzz(f *testing.F) { |
| f.Fatal("fatal in target") |
| } |
| |
| -- chatty_panic_fuzz_test.go -- |
| package chatty_panic_fuzz |
| |
| import "testing" |
| |
| func Fuzz(f *testing.F) { |
| panic("this is bad") |
| } |
| |
| -- chatty_skipped_fuzz_test.go -- |
| package chatty_skipped_fuzz |
| |
| import "testing" |
| |
| func Fuzz(f *testing.F) { |
| f.Skip() |
| } |
| |
| -- chatty_fuzz_test.go -- |
| package chatty_fuzz |
| |
| import "testing" |
| |
| func Fuzz(f *testing.F) { |
| f.Log("all good here") |
| f.Fuzz(func(*testing.T, []byte) {}) |
| } |
| |
| -- chatty_with_test_fuzz_test.go -- |
| package chatty_with_test_fuzz |
| |
| import "testing" |
| |
| func TestFoo(t *testing.T) { |
| t.Log("logged foo") |
| } |
| |
| func Fuzz(f *testing.F) { |
| f.Log("all good here") |
| f.Fuzz(func(*testing.T, []byte) {}) |
| } |