Testing and Code Quality#

The supported CMake CI presets are lean, headless verification profiles. They disable the viewer and examples and enable BUILD_TESTING.

CTest presets#

On Linux:

cmake --preset linux-ci
cmake --build --preset linux-ci --parallel
ctest --preset linux-ci

On macOS, with VULKAN_SDK set:

cmake --preset macos-ci
cmake --build --preset macos-ci --parallel
ctest --preset macos-ci

On Windows, run from a Visual Studio 2022 developer shell:

cmake --preset windows-vs2022-ci
cmake --build --preset windows-vs2022-ci --parallel
ctest --preset windows-vs2022-ci

Static analysis and formatting#

Enable clang-tidy in any compatible CMake configuration with:

cmake --preset linux-debug -DCRESSIM_NEO_ENABLE_CLANG_TIDY=ON
cmake --build --preset linux-debug --parallel

The option warns and continues if clang-tidy is unavailable. C++ changes must also follow the repository .clang-format rules. Release-wheel tests are separate from these development tests; see Packaging and Release Wheels.