Browse Source

ENH: add a more stressing FOREACH test.

Sebastien Barre 23 years ago
parent
commit
85b286f04e

+ 15 - 0
Tests/Complex/Executable/complex.cxx

@@ -359,6 +359,21 @@ int main()
     }
 #endif
 
+#ifndef FOREACH_CONCAT
+  cmFailed("the FOREACH, SET or CONFIGURE_FILE command is broken, "
+         "FOREACH_CONCAT is not defined.");
+#else
+  if(strcmp(FOREACH_CONCAT, "abcdefg") != 0)
+    {
+    cmFailed("the FOREACH, SET or CONFIGURE_FILE command is broken, "
+           "FOREACH_CONCAT == ", FOREACH_CONCAT);
+    }
+  else
+    {
+    cmPassed("FOREACH_CONCAT == ", FOREACH_CONCAT);
+    }
+#endif
+
   // ----------------------------------------------------------------------
   // Test FIND_FILE, FIND_PATH and various GET_FILENAME_COMPONENT combinations
 

+ 5 - 0
Tests/Complex/VarTests.cmake

@@ -102,6 +102,11 @@ FOREACH (INDEX 1 2)
   SET(FOREACH_VAR${INDEX} "VALUE${INDEX}")
 ENDFOREACH(INDEX)
 
+SET(FOREACH_CONCAT "")
+FOREACH (INDEX "a;b;c;d;e;f;g")
+  SET(FOREACH_CONCAT "${FOREACH_CONCAT}${INDEX}")
+ENDFOREACH(INDEX)
+
 #
 # Test FIND_FILE, FIND_PATH and various GET_FILENAME_COMPONENT combinations
 #

+ 1 - 0
Tests/Complex/cmTestConfigure.h.in

@@ -10,6 +10,7 @@
 
 #define FOREACH_VAR1 "${FOREACH_VAR1}"
 #define FOREACH_VAR2 "${FOREACH_VAR2}"
+#define FOREACH_CONCAT "${FOREACH_CONCAT}"
 
 // Test FIND_FILE, FIND_PATH and various GET_FILENAME_COMPONENT combinations
 

+ 15 - 0
Tests/ComplexOneConfig/Executable/complex.cxx

@@ -359,6 +359,21 @@ int main()
     }
 #endif
 
+#ifndef FOREACH_CONCAT
+  cmFailed("the FOREACH, SET or CONFIGURE_FILE command is broken, "
+         "FOREACH_CONCAT is not defined.");
+#else
+  if(strcmp(FOREACH_CONCAT, "abcdefg") != 0)
+    {
+    cmFailed("the FOREACH, SET or CONFIGURE_FILE command is broken, "
+           "FOREACH_CONCAT == ", FOREACH_CONCAT);
+    }
+  else
+    {
+    cmPassed("FOREACH_CONCAT == ", FOREACH_CONCAT);
+    }
+#endif
+
   // ----------------------------------------------------------------------
   // Test FIND_FILE, FIND_PATH and various GET_FILENAME_COMPONENT combinations
 

+ 5 - 0
Tests/ComplexOneConfig/VarTests.cmake

@@ -102,6 +102,11 @@ FOREACH (INDEX 1 2)
   SET(FOREACH_VAR${INDEX} "VALUE${INDEX}")
 ENDFOREACH(INDEX)
 
+SET(FOREACH_CONCAT "")
+FOREACH (INDEX "a;b;c;d;e;f;g")
+  SET(FOREACH_CONCAT "${FOREACH_CONCAT}${INDEX}")
+ENDFOREACH(INDEX)
+
 #
 # Test FIND_FILE, FIND_PATH and various GET_FILENAME_COMPONENT combinations
 #

+ 1 - 0
Tests/ComplexOneConfig/cmTestConfigure.h.in

@@ -10,6 +10,7 @@
 
 #define FOREACH_VAR1 "${FOREACH_VAR1}"
 #define FOREACH_VAR2 "${FOREACH_VAR2}"
+#define FOREACH_CONCAT "${FOREACH_CONCAT}"
 
 // Test FIND_FILE, FIND_PATH and various GET_FILENAME_COMPONENT combinations
 

+ 15 - 0
Tests/ComplexRelativePaths/Executable/complex.cxx

@@ -359,6 +359,21 @@ int main()
     }
 #endif
 
+#ifndef FOREACH_CONCAT
+  cmFailed("the FOREACH, SET or CONFIGURE_FILE command is broken, "
+         "FOREACH_CONCAT is not defined.");
+#else
+  if(strcmp(FOREACH_CONCAT, "abcdefg") != 0)
+    {
+    cmFailed("the FOREACH, SET or CONFIGURE_FILE command is broken, "
+           "FOREACH_CONCAT == ", FOREACH_CONCAT);
+    }
+  else
+    {
+    cmPassed("FOREACH_CONCAT == ", FOREACH_CONCAT);
+    }
+#endif
+
   // ----------------------------------------------------------------------
   // Test FIND_FILE, FIND_PATH and various GET_FILENAME_COMPONENT combinations
 

+ 5 - 0
Tests/ComplexRelativePaths/VarTests.cmake

@@ -102,6 +102,11 @@ FOREACH (INDEX 1 2)
   SET(FOREACH_VAR${INDEX} "VALUE${INDEX}")
 ENDFOREACH(INDEX)
 
+SET(FOREACH_CONCAT "")
+FOREACH (INDEX "a;b;c;d;e;f;g")
+  SET(FOREACH_CONCAT "${FOREACH_CONCAT}${INDEX}")
+ENDFOREACH(INDEX)
+
 #
 # Test FIND_FILE, FIND_PATH and various GET_FILENAME_COMPONENT combinations
 #

+ 1 - 0
Tests/ComplexRelativePaths/cmTestConfigure.h.in

@@ -10,6 +10,7 @@
 
 #define FOREACH_VAR1 "${FOREACH_VAR1}"
 #define FOREACH_VAR2 "${FOREACH_VAR2}"
+#define FOREACH_CONCAT "${FOREACH_CONCAT}"
 
 // Test FIND_FILE, FIND_PATH and various GET_FILENAME_COMPONENT combinations