[Cmake-commits] CMake branch, next, updated. v2.8.2-1031-g94ed8db

Ben Boeckel ben.boeckel at kitware.com
Thu Oct 7 13:02:27 EDT 2010


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  94ed8dbe202db1ee68be2e768cbba2a97b8f755a (commit)
       via  fe390a2607afcd8f0985a54990236a3ea16643ab (commit)
      from  0fe364f8aa695630ab52dc5e07da186cc8b3ada2 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=94ed8dbe202db1ee68be2e768cbba2a97b8f755a
commit 94ed8dbe202db1ee68be2e768cbba2a97b8f755a
Merge: 0fe364f fe390a2
Author:     Ben Boeckel <ben.boeckel at kitware.com>
AuthorDate: Thu Oct 7 13:02:18 2010 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Thu Oct 7 13:02:18 2010 -0400

    Merge topic 'dev/strict-mode' into next
    
    fe390a2 Add 'ArgumentExpansion' test


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fe390a2607afcd8f0985a54990236a3ea16643ab
commit fe390a2607afcd8f0985a54990236a3ea16643ab
Author:     Ben Boeckel <ben.boeckel at kitware.com>
AuthorDate: Thu Oct 7 12:29:43 2010 -0400
Commit:     Ben Boeckel <ben.boeckel at kitware.com>
CommitDate: Thu Oct 7 13:01:32 2010 -0400

    Add 'ArgumentExpansion' test

diff --git a/Tests/ArgumentExpansion/CMakeLists.txt b/Tests/ArgumentExpansion/CMakeLists.txt
new file mode 100644
index 0000000..bd78169
--- /dev/null
+++ b/Tests/ArgumentExpansion/CMakeLists.txt
@@ -0,0 +1,59 @@
+cmake_minimum_required(VERSION 2.8)
+
+project(ArgumentExpansion)
+
+function (argument_tester expected expected_len)
+    list(LENGTH ARGN argn_len)
+    list(LENGTH ${expected} expected_received_len)
+
+    if (NOT ${expected_received_len} EQUAL ${expected_len})
+        message(STATUS "Error: Expanding expected values isn't working")
+    endif (NOT ${expected_received_len} EQUAL ${expected_len})
+
+    if (${argn_len} EQUAL ${expected_len})
+        set(i 0)
+        while (i LESS ${argn_len})
+            list(GET ARGN ${i} argn_value)
+            list(GET ${expected} ${i} expected_value)
+
+            if (NOT ${argn_value} STREQUAL ${expected_value})
+                message(STATUS "Error: Argument ${i} doesn't match")
+                message(STATUS "    Expected: ${expected_value}")
+                message(STATUS "    Received: ${argn_value}")
+            endif (NOT ${argn_value} STREQUAL ${expected_value})
+
+            math(EXPR i "${i} + 1")
+        endwhile (i LESS ${argn_len})
+    else (${argn_len} EQUAL ${expected_len})
+        message(STATUS "Error: Lengths of arguments don't match")
+        message(STATUS "    Expected: ${expected_len}")
+        message(STATUS "    Received: ${argn_len}")
+    endif (${argn_len} EQUAL ${expected_len})
+endfunction (argument_tester expected)
+
+set(empty_test)
+message(STATUS "Test: Empty arguments")
+argument_tester(empty_test 0 ${empty_test})
+
+set(single_arg_test
+    "single arg")
+message(STATUS "Test: Single argument")
+argument_tester(single_arg_test 1 ${single_arg_test})
+
+set(multiple_arg_test
+    "first arg"
+    "second arg")
+message(STATUS "Test: Multiple arguments")
+argument_tester(multiple_arg_test 2 ${multiple_arg_test})
+
+set(nested_list_arg_test
+    "${multiple_arg_test}"
+    "first arg"
+    "second arg")
+message(STATUS "Test: Nested list argument")
+argument_tester(nested_list_arg_test 3 ${nested_list_arg_test})
+
+set(semicolon_arg_test
+    "pre\;post")
+message(STATUS "Test: Semicolon argument")
+argument_tester(semicolon_arg_test 1 ${semicolon_arg_test})
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 739dcdf..a725354 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -368,6 +368,21 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
     )
   LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/CustComDepend")
 
+  ADD_TEST(ArgumentExpansion  ${CMAKE_CTEST_COMMAND}
+    --build-and-test
+    "${CMake_SOURCE_DIR}/Tests/ArgumentExpansion"
+    "${CMake_BINARY_DIR}/Tests/ArgumentExpansion"
+    --build-generator ${CMAKE_TEST_GENERATOR}
+    --build-project ArgumentExpansion
+    --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+    --build-exe-dir "${CMake_BINARY_DIR}/Tests/ArgumentExpansion/bin"
+    )
+  IF(CMAKE_STRICT)
+    SET_TESTS_PROPERTIES(ArgumentExpansion PROPERTIES
+      FAIL_REGULAR_EXPRESSION "Error: ")
+  ENDIF(CMAKE_STRICT)
+  LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/ArgumentExpansion")
+
   ADD_TEST(CustomCommand  ${CMAKE_CTEST_COMMAND}
     --build-and-test
     "${CMake_SOURCE_DIR}/Tests/CustomCommand"

-----------------------------------------------------------------------

Summary of changes:
 Tests/ArgumentExpansion/CMakeLists.txt |   59 ++++++++++++++++++++++++++++++++
 Tests/CMakeLists.txt                   |   15 ++++++++
 2 files changed, 74 insertions(+), 0 deletions(-)
 create mode 100644 Tests/ArgumentExpansion/CMakeLists.txt


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list