mirror of
https://github.com/Kitware/CMake.git
synced 2026-05-03 12:49:50 -05:00
Tests: Improve RunCMake.CXXModules expectation matching and error reporting
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
CMake Warning \(dev\) at CMakeLists.txt:7 \(target_sources\):
|
CMake Warning \(dev\) at CMakeLists.txt:[0-9]+ \(target_sources\):
|
||||||
CMake's C\+\+ module support is experimental. It is meant only for
|
CMake's C\+\+ module support is experimental. It is meant only for
|
||||||
experimentation and feedback to CMake developers.
|
experimentation and feedback to CMake developers.
|
||||||
This warning is for project developers. Use -Wno-dev to suppress it.
|
This warning is for project developers. Use -Wno-dev to suppress it.
|
||||||
|
|||||||
+15
-5
@@ -14,19 +14,29 @@ get_property(file_sets TARGET CXXModules::export_bmi_and_interfaces
|
|||||||
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
||||||
if (NOT file_sets STREQUAL "modules")
|
if (NOT file_sets STREQUAL "modules")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file sets in `CXXModules::export_bmi_and_interfaces`: `${file_sets}`")
|
"Incorrect exported file sets in CXXModules::export_bmi_and_interfaces:\n ${file_sets}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(file_set_files TARGET CXXModules::export_bmi_and_interfaces
|
get_property(file_set_files TARGET CXXModules::export_bmi_and_interfaces
|
||||||
PROPERTY CXX_MODULE_SET_modules)
|
PROPERTY CXX_MODULE_SET_modules)
|
||||||
if (NOT file_set_files STREQUAL "${expected_source_dir}/importable.cxx")
|
set(expected_file_set_files
|
||||||
|
"${expected_source_dir}/importable.cxx"
|
||||||
|
)
|
||||||
|
if (NOT file_set_files STREQUAL "${expected_file_set_files}")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file set paths in CXXModules::export_bmi_and_interfaces`: `${file_set_files}`")
|
"Incorrect exported file set paths in CXXModules::export_bmi_and_interfaces:\n ${file_set_files}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(imported_modules TARGET CXXModules::export_bmi_and_interfaces
|
get_property(imported_modules TARGET CXXModules::export_bmi_and_interfaces
|
||||||
PROPERTY IMPORTED_CXX_MODULES_DEBUG)
|
PROPERTY IMPORTED_CXX_MODULES_DEBUG)
|
||||||
if (NOT imported_modules MATCHES "importable=${expected_source_dir}/importable.cxx,${expected_binary_dir}/CMakeFiles/export_bmi_and_interfaces.dir(/Debug)?/importable.(gcm|pcm|ifc)")
|
set(expected_imported_modules
|
||||||
|
"importable=${expected_source_dir}/importable.cxx,${expected_binary_dir}/CMakeFiles/export_bmi_and_interfaces.dir(/Debug)?/importable.(gcm|pcm|ifc)"
|
||||||
|
)
|
||||||
|
if (NOT imported_modules MATCHES "^${expected_imported_modules}$")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported modules in CXXModules::export_bmi_and_interfaces`: `${imported_modules}`")
|
"Incorrect exported modules in CXXModules::export_bmi_and_interfaces:\n"
|
||||||
|
" ${imported_modules}\n"
|
||||||
|
"does not match:\n"
|
||||||
|
" ${expected_imported_modules}"
|
||||||
|
)
|
||||||
endif ()
|
endif ()
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
CMake Warning \(dev\) at CMakeLists.txt:7 \(target_sources\):
|
CMake Warning \(dev\) at CMakeLists.txt:[0-9]+ \(target_sources\):
|
||||||
CMake's C\+\+ module support is experimental. It is meant only for
|
CMake's C\+\+ module support is experimental. It is meant only for
|
||||||
experimentation and feedback to CMake developers.
|
experimentation and feedback to CMake developers.
|
||||||
This warning is for project developers. Use -Wno-dev to suppress it.
|
This warning is for project developers. Use -Wno-dev to suppress it.
|
||||||
|
|||||||
+15
-5
@@ -14,19 +14,29 @@ get_property(file_sets TARGET CXXModules::export_bmi_and_interfaces
|
|||||||
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
||||||
if (NOT file_sets STREQUAL "modules")
|
if (NOT file_sets STREQUAL "modules")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file sets in `CXXModules::export_bmi_and_interfaces`: `${file_sets}`")
|
"Incorrect exported file sets in CXXModules::export_bmi_and_interfaces:\n ${file_sets}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(file_set_files TARGET CXXModules::export_bmi_and_interfaces
|
get_property(file_set_files TARGET CXXModules::export_bmi_and_interfaces
|
||||||
PROPERTY CXX_MODULE_SET_modules)
|
PROPERTY CXX_MODULE_SET_modules)
|
||||||
if (NOT file_set_files STREQUAL "${expected_source_dir}/importable.cxx")
|
set(expected_file_set_files
|
||||||
|
"${expected_source_dir}/importable.cxx"
|
||||||
|
)
|
||||||
|
if (NOT file_set_files STREQUAL "${expected_file_set_files}")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file set paths in CXXModules::export_bmi_and_interfaces`: `${file_set_files}`")
|
"Incorrect exported file set paths in CXXModules::export_bmi_and_interfaces:\n ${file_set_files}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(imported_modules TARGET CXXModules::export_bmi_and_interfaces
|
get_property(imported_modules TARGET CXXModules::export_bmi_and_interfaces
|
||||||
PROPERTY IMPORTED_CXX_MODULES_DEBUG)
|
PROPERTY IMPORTED_CXX_MODULES_DEBUG)
|
||||||
if (NOT imported_modules MATCHES "importable=${expected_source_dir}/importable.cxx,${expected_binary_dir}/importable.(gcm|pcm|ifc)")
|
set(expected_imported_modules
|
||||||
|
"importable=${expected_source_dir}/importable.cxx,${expected_binary_dir}/importable.(gcm|pcm|ifc)"
|
||||||
|
)
|
||||||
|
if (NOT imported_modules MATCHES "^${expected_imported_modules}$")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported modules in CXXModules::export_bmi_and_interfaces`: `${imported_modules}`")
|
"Incorrect exported modules in CXXModules::export_bmi_and_interfaces:\n"
|
||||||
|
" ${imported_modules}\n"
|
||||||
|
"does not match:\n"
|
||||||
|
" ${expected_imported_modules}"
|
||||||
|
)
|
||||||
endif ()
|
endif ()
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
CMake Warning \(dev\) at CMakeLists.txt:7 \(target_sources\):
|
CMake Warning \(dev\) at CMakeLists.txt:[0-9] \(target_sources\):
|
||||||
CMake's C\+\+ module support is experimental. It is meant only for
|
CMake's C\+\+ module support is experimental. It is meant only for
|
||||||
experimentation and feedback to CMake developers.
|
experimentation and feedback to CMake developers.
|
||||||
This warning is for project developers. Use -Wno-dev to suppress it.
|
This warning is for project developers. Use -Wno-dev to suppress it.
|
||||||
|
|||||||
@@ -14,19 +14,29 @@ get_property(file_sets TARGET CXXModules::export_interfaces
|
|||||||
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
||||||
if (NOT file_sets STREQUAL "modules")
|
if (NOT file_sets STREQUAL "modules")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file sets in `CXXModules::export_interfaces`: `${file_sets}`")
|
"Incorrect exported file sets in CXXModules::export_interfaces:\n ${file_sets}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(file_set_files TARGET CXXModules::export_interfaces
|
get_property(file_set_files TARGET CXXModules::export_interfaces
|
||||||
PROPERTY CXX_MODULE_SET_modules)
|
PROPERTY CXX_MODULE_SET_modules)
|
||||||
if (NOT file_set_files STREQUAL "${expected_source_dir}/importable.cxx")
|
set(expected_file_set_files
|
||||||
|
"${expected_source_dir}/importable.cxx"
|
||||||
|
)
|
||||||
|
if (NOT file_set_files STREQUAL "${expected_file_set_files}")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file set paths in CXXModules::export_interfaces`: `${file_set_files}`")
|
"Incorrect exported file set paths in CXXModules::export_interfaces:\n ${file_set_files}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(imported_modules TARGET CXXModules::export_interfaces
|
get_property(imported_modules TARGET CXXModules::export_interfaces
|
||||||
PROPERTY IMPORTED_CXX_MODULES_DEBUG)
|
PROPERTY IMPORTED_CXX_MODULES_DEBUG)
|
||||||
if (NOT imported_modules MATCHES "importable=${expected_source_dir}/importable.cxx,${expected_binary_dir}/CMakeFiles/export_interfaces.dir(/Debug)?/importable.(gcm|pcm|ifc)")
|
set(expected_imported_modules
|
||||||
|
"importable=${expected_source_dir}/importable.cxx,${expected_binary_dir}/CMakeFiles/export_interfaces.dir(/Debug)?/importable.(gcm|pcm|ifc)"
|
||||||
|
)
|
||||||
|
if (NOT imported_modules MATCHES "^${expected_imported_modules}$")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported modules in CXXModules::export_interfaces`: `${imported_modules}`\n`importable=${expected_source_dir}/importable.cxx,${expected_binary_dir}/CMakeFiles/export_interfaces.dir(/Debug)?/importable.(gcm|pcm|ifc)`")
|
"Incorrect exported modules in CXXModules::export_interfaces:\n"
|
||||||
|
" ${imported_modules}\n"
|
||||||
|
"does not match:\n"
|
||||||
|
" ${expected_imported_modules}"
|
||||||
|
)
|
||||||
endif ()
|
endif ()
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
CMake Warning \(dev\) at CMakeLists.txt:7 \(target_sources\):
|
CMake Warning \(dev\) at CMakeLists.txt:[0-9]+ \(target_sources\):
|
||||||
CMake's C\+\+ module support is experimental. It is meant only for
|
CMake's C\+\+ module support is experimental. It is meant only for
|
||||||
experimentation and feedback to CMake developers.
|
experimentation and feedback to CMake developers.
|
||||||
This warning is for project developers. Use -Wno-dev to suppress it.
|
This warning is for project developers. Use -Wno-dev to suppress it.
|
||||||
|
|||||||
@@ -14,19 +14,29 @@ get_property(file_sets TARGET CXXModules::export_interfaces
|
|||||||
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
||||||
if (NOT file_sets STREQUAL "modules")
|
if (NOT file_sets STREQUAL "modules")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file sets in `CXXModules::export_interfaces`: `${file_sets}`")
|
"Incorrect exported file sets in CXXModules::export_interfaces:\n ${file_sets}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(file_set_files TARGET CXXModules::export_interfaces
|
get_property(file_set_files TARGET CXXModules::export_interfaces
|
||||||
PROPERTY CXX_MODULE_SET_modules)
|
PROPERTY CXX_MODULE_SET_modules)
|
||||||
if (NOT file_set_files STREQUAL "${expected_source_dir}/importable.cxx")
|
set(expected_file_set_files
|
||||||
|
"${expected_source_dir}/importable.cxx"
|
||||||
|
)
|
||||||
|
if (NOT file_set_files STREQUAL "${expected_file_set_files}")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file set paths in CXXModules::export_interfaces`: `${file_set_files}`")
|
"Incorrect exported file set paths in CXXModules::export_interfaces:\n ${file_set_files}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(imported_modules TARGET CXXModules::export_interfaces
|
get_property(imported_modules TARGET CXXModules::export_interfaces
|
||||||
PROPERTY IMPORTED_CXX_MODULES_DEBUG)
|
PROPERTY IMPORTED_CXX_MODULES_DEBUG)
|
||||||
if (NOT imported_modules STREQUAL "importable=${expected_source_dir}/importable.cxx")
|
set(expected_imported_modules
|
||||||
|
"importable=${expected_source_dir}/importable.cxx"
|
||||||
|
)
|
||||||
|
if (NOT imported_modules STREQUAL "${expected_imported_modules}")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported modules in CXXModules::export_interfaces`: `${imported_modules}`")
|
"Incorrect exported modules in CXXModules::export_interfaces:\n"
|
||||||
|
" ${imported_modules}\n"
|
||||||
|
"does not match:\n"
|
||||||
|
" ${expected_imported_modules}"
|
||||||
|
)
|
||||||
endif ()
|
endif ()
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
CMake Warning \(dev\) at CMakeLists.txt:7 \(target_sources\):
|
CMake Warning \(dev\) at CMakeLists.txt:[0-9]+ \(target_sources\):
|
||||||
CMake's C\+\+ module support is experimental. It is meant only for
|
CMake's C\+\+ module support is experimental. It is meant only for
|
||||||
experimentation and feedback to CMake developers.
|
experimentation and feedback to CMake developers.
|
||||||
This warning is for project developers. Use -Wno-dev to suppress it.
|
This warning is for project developers. Use -Wno-dev to suppress it.
|
||||||
|
|||||||
+6
-3
@@ -14,14 +14,17 @@ get_property(file_sets TARGET CXXModules::export_interfaces_no_properties
|
|||||||
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
||||||
if (NOT file_sets STREQUAL "modules")
|
if (NOT file_sets STREQUAL "modules")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file sets in `CXXModules::export_interfaces_no_properties`: `${file_sets}`")
|
"Incorrect exported file sets in CXXModules::export_interfaces_no_properties:\n ${file_sets}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(file_set_files TARGET CXXModules::export_interfaces_no_properties
|
get_property(file_set_files TARGET CXXModules::export_interfaces_no_properties
|
||||||
PROPERTY CXX_MODULE_SET_modules)
|
PROPERTY CXX_MODULE_SET_modules)
|
||||||
if (NOT file_set_files STREQUAL "${expected_dir}/importable.cxx")
|
set(expected_file_set_files
|
||||||
|
"${expected_dir}/importable.cxx"
|
||||||
|
)
|
||||||
|
if (NOT file_set_files STREQUAL "${expected_file_set_files}")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file set paths in CXXModules::export_interfaces_no_properties`: `${file_set_files}`")
|
"Incorrect exported file set paths in CXXModules::export_interfaces_no_properties:\n ${file_set_files}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(imported_modules_set TARGET CXXModules::export_interfaces_no_properties
|
get_property(imported_modules_set TARGET CXXModules::export_interfaces_no_properties
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
CMake Warning \(dev\) at CMakeLists.txt:7 \(target_sources\):
|
CMake Warning \(dev\) at CMakeLists.txt:[0-9]+ \(target_sources\):
|
||||||
CMake's C\+\+ module support is experimental. It is meant only for
|
CMake's C\+\+ module support is experimental. It is meant only for
|
||||||
experimentation and feedback to CMake developers.
|
experimentation and feedback to CMake developers.
|
||||||
This warning is for project developers. Use -Wno-dev to suppress it.
|
This warning is for project developers. Use -Wno-dev to suppress it.
|
||||||
|
|||||||
+6
-3
@@ -14,14 +14,17 @@ get_property(file_sets TARGET CXXModules::export_interfaces_no_properties
|
|||||||
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
PROPERTY INTERFACE_CXX_MODULE_SETS)
|
||||||
if (NOT file_sets STREQUAL "modules")
|
if (NOT file_sets STREQUAL "modules")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file sets in `CXXModules::export_interfaces_no_properties`: `${file_sets}`")
|
"Incorrect exported file sets in CXXModules::export_interfaces_no_properties:\n ${file_sets}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(file_set_files TARGET CXXModules::export_interfaces_no_properties
|
get_property(file_set_files TARGET CXXModules::export_interfaces_no_properties
|
||||||
PROPERTY CXX_MODULE_SET_modules)
|
PROPERTY CXX_MODULE_SET_modules)
|
||||||
if (NOT file_set_files STREQUAL "${expected_dir}/importable.cxx")
|
set(expected_file_set_files
|
||||||
|
"${expected_dir}/importable.cxx"
|
||||||
|
)
|
||||||
|
if (NOT file_set_files STREQUAL "${expected_file_set_files}")
|
||||||
message(FATAL_ERROR
|
message(FATAL_ERROR
|
||||||
"Incorrect exported file set paths in CXXModules::export_interfaces_no_properties`: `${file_set_files}`")
|
"Incorrect exported file set paths in CXXModules::export_interfaces_no_properties:\n ${file_set_files}")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
get_property(imported_modules_set TARGET CXXModules::export_interfaces_no_properties
|
get_property(imported_modules_set TARGET CXXModules::export_interfaces_no_properties
|
||||||
|
|||||||
Reference in New Issue
Block a user