Просмотр исходного кода

Tests: Run CFBundleTest only with valid configuration

The verification script needs to know the configuration tested.
Brad King 11 лет назад
Родитель
Сommit
b189c5994d
2 измененных файлов с 6 добавлено и 8 удалено
  1. 3 6
      Tests/CFBundleTest/VerifyResult.cmake
  2. 3 2
      Tests/CMakeLists.txt

+ 3 - 6
Tests/CFBundleTest/VerifyResult.cmake

@@ -14,13 +14,10 @@ message(STATUS "CTEST_CONFIGURATION_TYPE='${CTEST_CONFIGURATION_TYPE}'")
 message(STATUS "dir='${dir}'")
 message(STATUS "gen='${gen}'")
 
-if(gen MATCHES "Make" OR
-   "${CTEST_CONFIGURATION_TYPE}" STREQUAL "" OR
-   "${CTEST_CONFIGURATION_TYPE}" STREQUAL "." OR
-   "${CTEST_CONFIGURATION_TYPE}" STREQUAL "NoConfig")
-  set(expected_filename "${dir}/CFBundleTest.plugin/Contents/MacOS/CFBundleTest")
-else()
+if(gen STREQUAL "Xcode")
   set(expected_filename "${dir}/${CTEST_CONFIGURATION_TYPE}/CFBundleTest.plugin/Contents/MacOS/CFBundleTest")
+else()
+  set(expected_filename "${dir}/CFBundleTest.plugin/Contents/MacOS/CFBundleTest")
 endif()
 
 if(NOT EXISTS "${expected_filename}")

+ 3 - 2
Tests/CMakeLists.txt

@@ -1935,16 +1935,17 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
         ${BundleTestInstallDir}/Applications/SecondBundleExe.app/Contents/MacOS/SecondBundleExe)
       list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/BundleTest")
 
-      add_test(CFBundleTest ${CMAKE_CTEST_COMMAND}
+      add_test(NAME CFBundleTest COMMAND ${CMAKE_CTEST_COMMAND}
         --build-and-test
         "${CMake_SOURCE_DIR}/Tests/CFBundleTest"
         "${CMake_BINARY_DIR}/Tests/CFBundleTest"
         --build-two-config
         ${build_generator_args}
         --build-project CFBundleTest
+        --build-config $<CONFIGURATION>
         --build-options ${build_options}
         --test-command
-        ${CMAKE_CMAKE_COMMAND} -DCTEST_CONFIGURATION_TYPE=\${CTEST_CONFIGURATION_TYPE}
+        ${CMAKE_CMAKE_COMMAND} -DCTEST_CONFIGURATION_TYPE=$<CONFIGURATION>
         -Ddir=${CMake_BINARY_DIR}/Tests/CFBundleTest
         -Dgen=${CMAKE_GENERATOR}
         -P ${CMake_SOURCE_DIR}/Tests/CFBundleTest/VerifyResult.cmake)