Fuzz test (tests/fuzz_test.cpp): random shapes through random edits and combines, broken scene and model files; in check and CI. Fixed what it found: Manifold given repeated or non-finite points (crash; the BSP takes those now), a damaged file's non-finite numbers (now 0), extruding both sides of a plane (NaN)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Nexoniarz 2026-10-21 08:38:39 +02:00
commit 9918d9a770
13 changed files with 294 additions and 6 deletions

View file

@ -6,3 +6,7 @@ add_executable(script_test script_test.cpp)
target_link_libraries(script_test PRIVATE fry_script)
target_compile_definitions(script_test PRIVATE FRY_SCRIPTS_DIR="${PROJECT_SOURCE_DIR}/content/Fry3DX/scripts" FRY_PLUGINS_DIR="${PROJECT_SOURCE_DIR}/content/Fry3DX/plugins")
add_test(NAME script_test COMMAND script_test)
# Random shapes, edits and broken files thrown at the core: nothing may crash (the same each run).
add_executable(fuzz_test fuzz_test.cpp)
target_link_libraries(fuzz_test PRIVATE fry_core)
add_test(NAME fuzz_test COMMAND fuzz_test)