find_package(Catch2 3 REQUIRED CONFIG) include(Catch) function(cargoxx_add_test name) add_executable(${name} ${name}.cpp) target_link_libraries(${name} PRIVATE cargoxx Catch2::Catch2WithMain) catch_discover_tests(${name}) endfunction() cargoxx_add_test(util_error) cargoxx_add_test(semver_satisfies) cargoxx_add_test(exec_run) cargoxx_add_test(manifest_parse) cargoxx_add_test(manifest_write) cargoxx_add_test(layout_discovery) cargoxx_add_test(lockfile_round_trip) cargoxx_add_test(linkdb_lookup) cargoxx_add_test(linkdb_overlay) cargoxx_add_test(codegen_flake) cargoxx_add_test(codegen_cmake) cargoxx_add_test(cmd_new) cargoxx_add_test(cmd_build) cargoxx_add_test(cmd_run) cargoxx_add_test(cmd_clean) cargoxx_add_test(cmd_add) cargoxx_add_test(cmd_remove)