[cmake-developers] [PATCH v2 2/2] Add tests for continue command

Gregor Jasny gjasny at googlemail.com
Tue Nov 4 15:10:20 EST 2014


Signed-off-by: Gregor Jasny <gjasny at googlemail.com>
---
 Tests/RunCMake/CMakeLists.txt                            |  1 +
 Tests/RunCMake/continue/CMakeLists.txt                   |  3 +++
 Tests/RunCMake/continue/ContinueForeach-stdout.txt       |  2 ++
 Tests/RunCMake/continue/ContinueForeach.cmake            |  6 ++++++
 Tests/RunCMake/continue/ContinueNestedForeach-stdout.txt |  4 ++++
 Tests/RunCMake/continue/ContinueNestedForeach.cmake      | 11 +++++++++++
 Tests/RunCMake/continue/ContinueWhile-stdout.txt         |  4 ++++
 Tests/RunCMake/continue/ContinueWhile.cmake              |  8 ++++++++
 Tests/RunCMake/continue/NoEnclosingBlock-result.txt      |  1 +
 Tests/RunCMake/continue/NoEnclosingBlock-stderr.txt      |  1 +
 Tests/RunCMake/continue/NoEnclosingBlock.cmake           |  1 +
 Tests/RunCMake/continue/RunCMakeTest.cmake               |  6 ++++++
 12 files changed, 48 insertions(+)
 create mode 100644 Tests/RunCMake/continue/CMakeLists.txt
 create mode 100644 Tests/RunCMake/continue/ContinueForeach-stdout.txt
 create mode 100644 Tests/RunCMake/continue/ContinueForeach.cmake
 create mode 100644 Tests/RunCMake/continue/ContinueNestedForeach-stdout.txt
 create mode 100644 Tests/RunCMake/continue/ContinueNestedForeach.cmake
 create mode 100644 Tests/RunCMake/continue/ContinueWhile-stdout.txt
 create mode 100644 Tests/RunCMake/continue/ContinueWhile.cmake
 create mode 100644 Tests/RunCMake/continue/NoEnclosingBlock-result.txt
 create mode 100644 Tests/RunCMake/continue/NoEnclosingBlock-stderr.txt
 create mode 100644 Tests/RunCMake/continue/NoEnclosingBlock.cmake
 create mode 100644 Tests/RunCMake/continue/RunCMakeTest.cmake

diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt
index a99b46f..0099d4b 100644
--- a/Tests/RunCMake/CMakeLists.txt
+++ b/Tests/RunCMake/CMakeLists.txt
@@ -99,6 +99,7 @@ add_RunCMake_test(add_dependencies)
 add_RunCMake_test(build_command)
 add_RunCMake_test(export)
 add_RunCMake_test(cmake_minimum_required)
+add_RunCMake_test(continue)
 add_RunCMake_test(file)
 add_RunCMake_test(find_package)
 add_RunCMake_test(get_filename_component)
diff --git a/Tests/RunCMake/continue/CMakeLists.txt b/Tests/RunCMake/continue/CMakeLists.txt
new file mode 100644
index 0000000..ef2163c
--- /dev/null
+++ b/Tests/RunCMake/continue/CMakeLists.txt
@@ -0,0 +1,3 @@
+cmake_minimum_required(VERSION 3.1)
+project(${RunCMake_TEST} NONE)
+include(${RunCMake_TEST}.cmake)
diff --git a/Tests/RunCMake/continue/ContinueForeach-stdout.txt b/Tests/RunCMake/continue/ContinueForeach-stdout.txt
new file mode 100644
index 0000000..da7f847
--- /dev/null
+++ b/Tests/RunCMake/continue/ContinueForeach-stdout.txt
@@ -0,0 +1,2 @@
+2
+4
diff --git a/Tests/RunCMake/continue/ContinueForeach.cmake b/Tests/RunCMake/continue/ContinueForeach.cmake
new file mode 100644
index 0000000..25c3e81
--- /dev/null
+++ b/Tests/RunCMake/continue/ContinueForeach.cmake
@@ -0,0 +1,6 @@
+foreach (iter RANGE 1 5)
+  if ("${iter}" EQUAL 1 OR "${iter}" EQUAL 3 OR "${iter}" EQUAL 5)
+    continue ()
+  endif ()
+  message (STATUS "${iter}")
+endforeach ()
diff --git a/Tests/RunCMake/continue/ContinueNestedForeach-stdout.txt b/Tests/RunCMake/continue/ContinueNestedForeach-stdout.txt
new file mode 100644
index 0000000..34e37b7
--- /dev/null
+++ b/Tests/RunCMake/continue/ContinueNestedForeach-stdout.txt
@@ -0,0 +1,4 @@
+7 2
+7 4
+9 2
+9 4
diff --git a/Tests/RunCMake/continue/ContinueNestedForeach.cmake b/Tests/RunCMake/continue/ContinueNestedForeach.cmake
new file mode 100644
index 0000000..50966eb
--- /dev/null
+++ b/Tests/RunCMake/continue/ContinueNestedForeach.cmake
@@ -0,0 +1,11 @@
+foreach (outer RANGE 7 9)
+  if ("${outer}" EQUAL 8)
+    continue ()
+  endif ()
+  foreach (inner RANGE 1 5)
+    if ("${inner}" EQUAL 1 OR "${inner}" EQUAL 3 OR "${inner}" EQUAL 5)
+      continue ()
+    endif ()
+    message (STATUS "${outer} ${inner}")
+  endforeach ()
+endforeach ()
diff --git a/Tests/RunCMake/continue/ContinueWhile-stdout.txt b/Tests/RunCMake/continue/ContinueWhile-stdout.txt
new file mode 100644
index 0000000..26095d6
--- /dev/null
+++ b/Tests/RunCMake/continue/ContinueWhile-stdout.txt
@@ -0,0 +1,4 @@
+a
+aa
+aaaa
+aaaaa
\ No newline at end of file
diff --git a/Tests/RunCMake/continue/ContinueWhile.cmake b/Tests/RunCMake/continue/ContinueWhile.cmake
new file mode 100644
index 0000000..c4c9b31
--- /dev/null
+++ b/Tests/RunCMake/continue/ContinueWhile.cmake
@@ -0,0 +1,8 @@
+unset (iter)
+while(NOT "${iter}" STREQUAL "aaaaa")
+  set (iter "${iter}a")
+  if ("${iter}" STREQUAL "aaa")
+    continue ()
+  endif ()
+  message (STATUS "${iter}")
+endwhile()
diff --git a/Tests/RunCMake/continue/NoEnclosingBlock-result.txt b/Tests/RunCMake/continue/NoEnclosingBlock-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/continue/NoEnclosingBlock-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/continue/NoEnclosingBlock-stderr.txt b/Tests/RunCMake/continue/NoEnclosingBlock-stderr.txt
new file mode 100644
index 0000000..e2a9aa4
--- /dev/null
+++ b/Tests/RunCMake/continue/NoEnclosingBlock-stderr.txt
@@ -0,0 +1 @@
+Some helpful error message
diff --git a/Tests/RunCMake/continue/NoEnclosingBlock.cmake b/Tests/RunCMake/continue/NoEnclosingBlock.cmake
new file mode 100644
index 0000000..c038863
--- /dev/null
+++ b/Tests/RunCMake/continue/NoEnclosingBlock.cmake
@@ -0,0 +1 @@
+continue()
\ No newline at end of file
diff --git a/Tests/RunCMake/continue/RunCMakeTest.cmake b/Tests/RunCMake/continue/RunCMakeTest.cmake
new file mode 100644
index 0000000..de1255e
--- /dev/null
+++ b/Tests/RunCMake/continue/RunCMakeTest.cmake
@@ -0,0 +1,6 @@
+include(RunCMake)
+
+run_cmake(ContinueForeach)
+run_cmake(ContinueNestedForeach)
+run_cmake(ContinueWhile)
+run_cmake(NoEnclosingBlock)
-- 
1.9.3 (Apple Git-50)



More information about the cmake-developers mailing list