blob: 751b8b56987daaad47c722bd6ff909f4c2c3c4bb [file]
file(GLOB replies "${RunCMake_TEST_BINARY_DIR}/.cmake/api/v1/reply/target-headers-*.json")
if(NOT replies)
set(RunCMake_TEST_FAILED "No File API reply for headers")
return()
endif()
validate_json_schema("${RunCMake_SOURCE_DIR}/../../../Help/manual/file_api/schema_target.json" "${replies}")
foreach(reply IN LISTS replies)
file(READ "${reply}" contents)
string(JSON count ERROR_VARIABLE error LENGTH "${contents}" interfaceIncludes)
if(error OR NOT count EQUAL 1)
set(RunCMake_TEST_FAILED "Expected one language-independent interface include in ${reply}")
return()
endif()
string(JSON path GET "${contents}" interfaceIncludes 0 path)
string(JSON languages ERROR_VARIABLE error GET "${contents}" interfaceIncludes 0 languages)
if(NOT error)
set(RunCMake_TEST_FAILED "Unexpected languages for a project with no enabled languages: ${languages}")
return()
endif()
if(NOT path STREQUAL RunCMake_SOURCE_DIR)
set(RunCMake_TEST_FAILED "Unexpected language-independent interface include: ${path}")
return()
endif()
endforeach()