فهرست منبع

Add tests for unused command line variables

Ben Boeckel 15 سال پیش
والد
کامیت
75bda3864e
2فایلهای تغییر یافته به همراه29 افزوده شده و 0 حذف شده
  1. 28 0
      Tests/CMakeLists.txt
  2. 1 0
      Tests/VariableUsage/CMakeLists.txt

+ 28 - 0
Tests/CMakeLists.txt

@@ -1074,6 +1074,34 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
     LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/BundleGeneratorTest")
     LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/BundleGeneratorTest")
   ENDIF(APPLE AND CTEST_TEST_CPACK)
   ENDIF(APPLE AND CTEST_TEST_CPACK)
 
 
+  ADD_TEST(WarnUnusedCliUnused ${CMAKE_CTEST_COMMAND}
+    --build-and-test
+    "${CMake_SOURCE_DIR}/Tests/VariableUsage"
+    "${CMake_BINARY_DIR}/Tests/WarnUnusedCliUnused"
+    --build-generator ${CMAKE_TEST_GENERATOR}
+    --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+    --build-noclean
+    --build-project WarnUnusedCliUnused
+    --build-options "-DUNUSED_VARIABLE=Unused")
+  SET_TESTS_PROPERTIES(WarnUnusedCliUnused PROPERTIES
+    PASS_REGULAR_EXPRESSION "warning: The variable, \"UNUSED_VARIABLE\"")
+  LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/WarnUnusedCliUnused")
+
+  ADD_TEST(WarnUnusedCliUsed ${CMAKE_CTEST_COMMAND}
+    --build-and-test
+    "${CMake_SOURCE_DIR}/Tests/VariableUsage"
+    "${CMake_BINARY_DIR}/Tests/WarnUnusedCliUsed"
+    --build-generator ${CMAKE_TEST_GENERATOR}
+    --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+    --build-noclean
+    --build-project WarnUnusedCliUsed
+    --build-options "-DUSED_VARIABLE=Usage proven")
+  SET_TESTS_PROPERTIES(WarnUnusedCliUsed PROPERTIES
+    PASS_REGULAR_EXPRESSION "Usage proven")
+  SET_TESTS_PROPERTIES(WarnUnusedCliUsed PROPERTIES
+    FAIL_REGULAR_EXPRESSION "warning: The variable, \"USED_VARIABLE\"")
+  LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/WarnUnusedCliUsed")
+
   # Make sure CTest can handle a test with no newline in output.
   # Make sure CTest can handle a test with no newline in output.
   ADD_TEST(CTest.NoNewline
   ADD_TEST(CTest.NoNewline
     ${CMAKE_CMAKE_COMMAND} -E echo_append "This line has no newline!")
     ${CMAKE_CMAKE_COMMAND} -E echo_append "This line has no newline!")

+ 1 - 0
Tests/VariableUsage/CMakeLists.txt

@@ -0,0 +1 @@
+message(STATUS "${USED_VARIABLE}")