-
As part of the opaque properties writing, I need to address a requirement for fuzzing of the API (see I'm struggling to understand how the fuzzers are supposed to be run. If I turn on the likely-looking cmake options (
In addition, those passes seem to be pretty short duration - I second. So I think I'm doing it wrong. Is there a recipe for making the fuzzers pass and do meaningful fuzzing? |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 2 replies
-
Hi, I just added instructions for fuzzers here: #2523 That's only from a docker. For the failing tests, what was your exact CMake command ? I will update the doc for that too. You need local libaom, dav1d, libyuv and libsharpyuv. |
Beta Was this translation helpful? Give feedback.
-
Hi, sorry for the lack of instructions on how to run the fuzzers.
(the value after -R is a regular expression for the tests to run)
Update: Another requirement is having both AOM and DAV1D enabled. tests/CMakeLists.txt lists the following recommended flags (but I think some are missing): If you have all the right flags, then the failures might be related to your change. The logs should show you a reproducer test that you can copy paste in the test file to rerun it easily, OR you can use the FUZZTEST_PRNG_SEED which is printed as well, e.g.:
It is expected that the tests run only for a second or so, because they are in "unit test" mode, see also the fuzztest documentation. I have not tried running them in "fuzzing mode" mode locally, but you could also simply rerun them several times if you want to fuzz more. |
Beta Was this translation helpful? Give feedback.
Hi, sorry for the lack of instructions on how to run the fuzzers.
In general, to see why the test fails you should run it with logs, the easiest being with a command like this:
(the value after -R is a regular expression for the tests to run)
avif_fuzztest_yuvrgb
probably fails because you don't haveAVIF_LIBSHARPYUV
enabled (a requirement which again, was not properly documented).Update: Another requirement is having both AOM and DAV1D enabled. tests/CMakeLists.txt lists the following recommended flags (but I think some are missing):
-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DAVIF_CODEC_DAV1D=ON -DAVIF_ENABLE_WERROR=OFF
If you have all…