1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-14 19:08:07 +08:00

Tests/CXXModules: help diagnose build database errors

In tests that compare multiple files, knowing which file(s) errors come
from is difficult. Log the actual filepaths when this occurs to help
debugging.
This commit is contained in:
Ben Boeckel
2025-03-03 22:02:40 +01:00
parent 7ca4ac8e13
commit 8a773168fd

View File

@@ -70,7 +70,19 @@ function (check_build_database expect_basename fname component)
file(READ "${RunCMake_TEST_BINARY_DIR}/${fname}" actual)
file(READ "${expected_file}" expect)
set(RunCMake_TEST_FAILED_before "${RunCMake_TEST_FAILED}")
set(RunCMake_TEST_FAILED "")
check_json("${actual}" "${expect}")
if (RunCMake_TEST_FAILED)
string(PREPEND RunCMake_TEST_FAILED
"${RunCMake_TEST_FAILED_before}\n"
"actual file: ${RunCMake_TEST_BINARY_DIR}/${fname}\n"
"expect file: ${expected_file}\n")
else ()
set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED_before}")
endif ()
set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED}" PARENT_SCOPE)
endfunction ()