diff --git a/README.md b/README.md index 7c23bfe..44ebb66 100644 --- a/README.md +++ b/README.md @@ -229,6 +229,17 @@ codesign --force --sign - _Build/macos/install/libMoltenVK.dylib Release archives already include a signed `libMoltenVK.dylib`. +### Regression tests + +Build every regression executable and run the registered tests with: + +```powershell +cmake --build _Build/windows --target kyty_tests +ctest --test-dir _Build/windows --output-on-failure +``` + +Use `_Build/linux` instead of `_Build/windows` for a Linux build. + ### Visual Studio Code A ready-made Visual Studio Code setup is included in [`.vscode`](.vscode). It configures CMake diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 14863ec..eeb6885 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -444,10 +444,14 @@ if(NOT KYTY_CLANG_CL) endif() if(BUILD_TESTING) + add_test(NAME shader_cfg COMMAND $) add_test(NAME scalar_provenance COMMAND $) add_test(NAME image_page_table COMMAND $) add_test(NAME memory_tracker COMMAND $) add_test(NAME page_manager COMMAND $) + add_test(NAME shader_vertex_metadata COMMAND $) + add_test(NAME shader_stage_runtime COMMAND $) + add_test(NAME resource_tracking COMMAND $) add_test(NAME resource_mutex COMMAND $) add_test(NAME event_queue_lifetime COMMAND $) add_test(NAME shader_recompiler_compute COMMAND $) @@ -482,6 +486,21 @@ if(BUILD_TESTING) add_test(NAME buffer_cache_ranges COMMAND $ --buffer-cache-range-only) endif() + + add_custom_target(kyty_tests DEPENDS + shader_cfg_tests + scalar_provenance_tests + image_page_table_tests + memory_tracker_tests + page_manager_tests + shader_vertex_metadata_tests + shader_stage_runtime_tests + resource_tracking_tests + resource_mutex_tests + event_queue_lifetime_tests + shader_recompiler_compute_tests + virtual_memory_allocation_tests + ) endif()