blob: 291bd928bbdff1a2325e912e969f48cf1aa9d351 [file]
include(RunCMake)
function(run_cmake_build test)
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/${test}-build)
if(${ARGC} EQUAL 2)
set(_build_type ${ARGV1})
else()
set(_build_type Release)
endif()
if(RunCMake_GENERATOR_IS_MULTI_CONFIG)
list(APPEND RunCMake_TEST_OPTIONS -DCMAKE_CONFIGURATION_TYPES=${_build_type})
else()
list(APPEND RunCMake_TEST_OPTIONS -DCMAKE_BUILD_TYPE=${_build_type})
endif()
run_cmake(${test})
set(RunCMake_TEST_NO_CLEAN TRUE)
run_cmake_command(${test}-build ${CMAKE_COMMAND} --build . --config ${_build_type})
endfunction()
# General failure tests
run_cmake(InvalidCps1)
run_cmake(InvalidCps2)
run_cmake(InvalidCps3)
run_cmake(WrongName)
run_cmake(BadPrefix1)
run_cmake(BadPrefix2)
# Version-matching tests
run_cmake(ExactVersion)
run_cmake(CompatVersion)
run_cmake(MultipleVersions)
run_cmake(VersionLimit1)
run_cmake(VersionLimit2)
run_cmake(TransitiveVersion)
run_cmake(CustomVersion)
# Metadata Tests
run_cmake(License)
# Version-matching failure tests
run_cmake(MissingVersion1)
run_cmake(MissingVersion2)
run_cmake(VersionLimit3)
run_cmake(VersionLimit4)
# Component-related failure tests
run_cmake(MissingTransitiveDependency)
run_cmake(MissingComponent)
run_cmake(MissingComponentDependency)
run_cmake(MissingTransitiveComponentCPS)
run_cmake(MissingTransitiveComponentCMake)
run_cmake(MissingTransitiveComponentDependency)
run_cmake(SymbolicComponents)