# Wires the conformance suite into ctest, so `ctest -L conformance` — the check # .github/workflows/ci.yml's `conformance` job runs, and the one BRANCH_PROTECTION.md # names as required "when tests/conformance/ lands" — actually runs it. Without this file # that job's presence-check finds neither a CMakeLists.txt nor a package.json here and # silently no-ops to a green "skipped", forever: the M0 exit gate would never actually # gate anything. Owned by lane PROTO. # # One ctest entry shells out to run.sh — the exact command tests/conformance/README.md # tells a human to run locally. That is deliberate: there is exactly one definition of # "the suite passed", not a CMake-flavoured near-duplicate of it that can drift from the # real one. The native (C++) half also gets its own finer-grained test via add_subdirectory # below, for a lane iterating on core/generated/ who doesn't want npm's cost every run. add_subdirectory(cpp) add_test( NAME conformance COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/run.sh WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} ) set_tests_properties(conformance PROPERTIES LABELS "conformance" # Installs two npm trees and runs a ten-minute-capable suite end to end; generous but # not unbounded, so a genuinely hung mockd fails the job instead of the runner. TIMEOUT 600 )