summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2020-08-17 18:58:39 (GMT)
committerKitware Robot <kwrobot@kitware.com>2020-08-17 18:58:49 (GMT)
commitfe3a404a735748a0588cd95a9a291874fbe88ae2 (patch)
tree093b3601dc0770d168be97bce3d6f695fa4c4799 /Tests/RunCMake
parentc873bb0a144583cfacecaa02206fa044c719fa1f (diff)
parenta20987732bbd8d7e86501e42b2b5a72d60d02805 (diff)
downloadCMake-fe3a404a735748a0588cd95a9a291874fbe88ae2.zip
CMake-fe3a404a735748a0588cd95a9a291874fbe88ae2.tar.gz
CMake-fe3a404a735748a0588cd95a9a291874fbe88ae2.tar.bz2
Merge topic 'add_test-special-chars-in-name'
a20987732b add_test: Allow special characters in test name (w/ policy CMP0110) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5076
Diffstat (limited to 'Tests/RunCMake')
-rw-r--r--Tests/RunCMake/CMakeLists.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common-AlphaNumeric.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common-BracketArgument.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common-EscapedSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common-FormerInvalidSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common-LeadingAndTrailingWhitespace.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common-OtherSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common-Quote.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common-Semicolon.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common-Space.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common-ValidSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Common.cmake9
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-AlphaNumeric-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-AlphaNumeric.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-BracketArgument-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-BracketArgument.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-EscapedSpecialChars-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-EscapedSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialChars-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialCharsMC.cmake1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-GeneratorExpressionSyntax.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-LeadingAndTrailingWhitespace-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-LeadingAndTrailingWhitespace.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-OtherSpecialChars-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-OtherSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-Quote-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-Quote.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-Semicolon.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-Space.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-ValidSpecialChars-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-NEW-ValidSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-AlphaNumeric-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-AlphaNumeric.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-BracketArgument-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-BracketArgument.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-EscapedSpecialChars-ctest-stderr.txt5
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-EscapedSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-result.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-stderr.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialCharsMC-ctest-stderr.txt3
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialCharsMC.cmake1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-GeneratorExpressionSyntax.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-LeadingAndTrailingWhitespace-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-LeadingAndTrailingWhitespace.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-OtherSpecialChars-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-OtherSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-Quote-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-Quote.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-result.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-stderr.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-Semicolon.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-result.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-stderr.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-Space.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-ValidSpecialChars-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-OLD-ValidSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-Test.cmake3
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-AlphaNumeric-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-AlphaNumeric.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument-stderr.txt11
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars-ctest-stderr.txt5
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars-stderr.txt11
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-result.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-stderr.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-stderr.txt13
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC-ctest-stderr.txt3
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC-stderr.txt13
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC.cmake1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-GeneratorExpressionSyntax.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace-stderr.txt11
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-OtherSpecialChars-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-OtherSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Quote-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Quote-stderr.txt11
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Quote.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-result.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-stderr.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-stderr.txt11
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Semicolon.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-result.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-stderr.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Space-stderr.txt11
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-Space.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-ValidSpecialChars-ctest-stdout.txt1
-rw-r--r--Tests/RunCMake/add_test/CMP0110-WARN-ValidSpecialChars.cmake2
-rw-r--r--Tests/RunCMake/add_test/CMakeLists.txt3
-rw-r--r--Tests/RunCMake/add_test/RunCMakeTest.cmake35
101 files changed, 286 insertions, 0 deletions
diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt
index 98a1f87..a1b9d5b 100644
--- a/Tests/RunCMake/CMakeLists.txt
+++ b/Tests/RunCMake/CMakeLists.txt
@@ -292,6 +292,7 @@ add_RunCMake_test(add_dependencies)
add_RunCMake_test(add_executable)
add_RunCMake_test(add_library)
add_RunCMake_test(add_subdirectory)
+add_RunCMake_test(add_test)
add_RunCMake_test(build_command)
add_executable(exit_code exit_code.c)
set(execute_process_ARGS -DEXIT_CODE_EXE=$<TARGET_FILE:exit_code>)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common-AlphaNumeric.cmake b/Tests/RunCMake/add_test/CMP0110-Common-AlphaNumeric.cmake
new file mode 100644
index 0000000..c2ab433
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common-AlphaNumeric.cmake
@@ -0,0 +1,2 @@
+set(TEST_NAME "abcdefghijklmnopqrstuvwxyz0123456789")
+include(CMP0110-Common.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common-BracketArgument.cmake b/Tests/RunCMake/add_test/CMP0110-Common-BracketArgument.cmake
new file mode 100644
index 0000000..77cd3eb
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common-BracketArgument.cmake
@@ -0,0 +1,2 @@
+set(TEST_NAME "[=[InBracketBeforeSemi;InBracketAfterSemi]=]")
+include(CMP0110-Common.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common-EscapedSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-Common-EscapedSpecialChars.cmake
new file mode 100644
index 0000000..268b622
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common-EscapedSpecialChars.cmake
@@ -0,0 +1,2 @@
+set(TEST_NAME \(\)\ \# )
+include(CMP0110-Common.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common-FormerInvalidSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-Common-FormerInvalidSpecialChars.cmake
new file mode 100644
index 0000000..65bca10
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common-FormerInvalidSpecialChars.cmake
@@ -0,0 +1,2 @@
+set(TEST_NAME "$[] #;\t\n\"\\")
+include(CMP0110-Common.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common-LeadingAndTrailingWhitespace.cmake b/Tests/RunCMake/add_test/CMP0110-Common-LeadingAndTrailingWhitespace.cmake
new file mode 100644
index 0000000..ec90e13
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common-LeadingAndTrailingWhitespace.cmake
@@ -0,0 +1,2 @@
+set(TEST_NAME " SurroundedByWhitespace ")
+include(CMP0110-Common.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common-OtherSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-Common-OtherSpecialChars.cmake
new file mode 100644
index 0000000..f74c3b5
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common-OtherSpecialChars.cmake
@@ -0,0 +1,2 @@
+set(TEST_NAME "!§%&/ü:*😤~")
+include(CMP0110-Common.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common-Quote.cmake b/Tests/RunCMake/add_test/CMP0110-Common-Quote.cmake
new file mode 100644
index 0000000..a1ddb66
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common-Quote.cmake
@@ -0,0 +1,2 @@
+set(TEST_NAME "BeforeQuote\"\"AfterEscapedQuote")
+include(CMP0110-Common.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common-Semicolon.cmake b/Tests/RunCMake/add_test/CMP0110-Common-Semicolon.cmake
new file mode 100644
index 0000000..11fd4fb
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common-Semicolon.cmake
@@ -0,0 +1,2 @@
+set(TEST_NAME "BeforeSemi;AfterSemi")
+include(CMP0110-Common.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common-Space.cmake b/Tests/RunCMake/add_test/CMP0110-Common-Space.cmake
new file mode 100644
index 0000000..38dd28e
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common-Space.cmake
@@ -0,0 +1,2 @@
+set(TEST_NAME "BeforeSpace AfterSpace")
+include(CMP0110-Common.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common-ValidSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-Common-ValidSpecialChars.cmake
new file mode 100644
index 0000000..bfd082b
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common-ValidSpecialChars.cmake
@@ -0,0 +1,2 @@
+set(TEST_NAME "abc_.+-012")
+include(CMP0110-Common.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Common.cmake b/Tests/RunCMake/add_test/CMP0110-Common.cmake
new file mode 100644
index 0000000..915d171
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Common.cmake
@@ -0,0 +1,9 @@
+include(CTest)
+add_test(
+ NAME "${TEST_NAME}"
+ COMMAND "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_LIST_DIR}/CMP0110-Test.cmake"
+)
+set_property(
+ TEST "${TEST_NAME}"
+ PROPERTY ENVIRONMENT CMAKE_add_test_ENVVAR=1
+)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-AlphaNumeric-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-NEW-AlphaNumeric-ctest-stdout.txt
new file mode 100644
index 0000000..ed939bf
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-AlphaNumeric-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: abcdefghijklmnopqrstuvwxyz0123456789 \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-AlphaNumeric.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-AlphaNumeric.cmake
new file mode 100644
index 0000000..7ea7042
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-AlphaNumeric.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-AlphaNumeric.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-BracketArgument-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-NEW-BracketArgument-ctest-stdout.txt
new file mode 100644
index 0000000..7364d56
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-BracketArgument-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: \[=\[InBracketBeforeSemi;InBracketAfterSemi\]=\] \.+[ ]+Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-BracketArgument.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-BracketArgument.cmake
new file mode 100644
index 0000000..baef07c
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-BracketArgument.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-BracketArgument.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-EscapedSpecialChars-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-NEW-EscapedSpecialChars-ctest-stdout.txt
new file mode 100644
index 0000000..80435b6
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-EscapedSpecialChars-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: \(\) # \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-EscapedSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-EscapedSpecialChars.cmake
new file mode 100644
index 0000000..c9b06bd
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-EscapedSpecialChars.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-EscapedSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialChars-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialChars-ctest-stdout.txt
new file mode 100644
index 0000000..5ad8694
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialChars-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: \$\[\] .+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialChars.cmake
new file mode 100644
index 0000000..86ddf14
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialChars.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-FormerInvalidSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialCharsMC.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialCharsMC.cmake
new file mode 100644
index 0000000..f9b556a
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-FormerInvalidSpecialCharsMC.cmake
@@ -0,0 +1 @@
+include(CMP0110-NEW-FormerInvalidSpecialChars.cmake NO_POLICY_SCOPE)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-GeneratorExpressionSyntax.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-GeneratorExpressionSyntax.cmake
new file mode 100644
index 0000000..0790536
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-GeneratorExpressionSyntax.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-GeneratorExpressionSyntax.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-LeadingAndTrailingWhitespace-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-NEW-LeadingAndTrailingWhitespace-ctest-stdout.txt
new file mode 100644
index 0000000..78379cd
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-LeadingAndTrailingWhitespace-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: [ ]SurroundedByWhitespace[ ] \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-LeadingAndTrailingWhitespace.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-LeadingAndTrailingWhitespace.cmake
new file mode 100644
index 0000000..2d636a8
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-LeadingAndTrailingWhitespace.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-LeadingAndTrailingWhitespace.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-OtherSpecialChars-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-NEW-OtherSpecialChars-ctest-stdout.txt
new file mode 100644
index 0000000..8ee3ea9
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-OtherSpecialChars-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: !§%&/ü:\*😤~ \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-OtherSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-OtherSpecialChars.cmake
new file mode 100644
index 0000000..d77a6ce
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-OtherSpecialChars.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-OtherSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-Quote-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-NEW-Quote-ctest-stdout.txt
new file mode 100644
index 0000000..23dafd4
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-Quote-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: BeforeQuote""AfterEscapedQuote \.+[ ]+Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-Quote.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-Quote.cmake
new file mode 100644
index 0000000..2e7a6e1
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-Quote.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-Quote.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-Semicolon.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-Semicolon.cmake
new file mode 100644
index 0000000..1c6e1b1
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-Semicolon.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-Semicolon.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-Space.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-Space.cmake
new file mode 100644
index 0000000..38afb85
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-Space.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-Space.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-ValidSpecialChars-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-NEW-ValidSpecialChars-ctest-stdout.txt
new file mode 100644
index 0000000..ae1a0b1
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-ValidSpecialChars-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: abc_\.\+-012 \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-NEW-ValidSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-NEW-ValidSpecialChars.cmake
new file mode 100644
index 0000000..62bb638
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-NEW-ValidSpecialChars.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 NEW)
+include(CMP0110-Common-ValidSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-AlphaNumeric-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-OLD-AlphaNumeric-ctest-stdout.txt
new file mode 100644
index 0000000..ed939bf
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-AlphaNumeric-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: abcdefghijklmnopqrstuvwxyz0123456789 \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-AlphaNumeric.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-AlphaNumeric.cmake
new file mode 100644
index 0000000..bf4e82b
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-AlphaNumeric.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-AlphaNumeric.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-BracketArgument-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-OLD-BracketArgument-ctest-stdout.txt
new file mode 100644
index 0000000..093f5d4
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-BracketArgument-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: InBracketBeforeSemi;InBracketAfterSemi \.+[ ]+Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-BracketArgument.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-BracketArgument.cmake
new file mode 100644
index 0000000..05dfeb4
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-BracketArgument.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-BracketArgument.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-EscapedSpecialChars-ctest-stderr.txt b/Tests/RunCMake/add_test/CMP0110-OLD-EscapedSpecialChars-ctest-stderr.txt
new file mode 100644
index 0000000..ec2cf2c
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-EscapedSpecialChars-ctest-stderr.txt
@@ -0,0 +1,5 @@
+CMake Error at CTestTestfile.cmake:[0-9]+:
+ Parse error\. Function missing ending "\)"\. End of file reached\.
+
+
+No tests were found!!!
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-EscapedSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-EscapedSpecialChars.cmake
new file mode 100644
index 0000000..1f0c99f
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-EscapedSpecialChars.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-EscapedSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-result.txt b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-result.txt
new file mode 100644
index 0000000..45a4fb7
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-result.txt
@@ -0,0 +1 @@
+8
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-stderr.txt b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-stderr.txt
new file mode 100644
index 0000000..c656b4c
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-stderr.txt
@@ -0,0 +1 @@
+Unable to find executable:
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-stdout.txt
new file mode 100644
index 0000000..d3b0fac
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: \$\[\] \.+\*\*\*Not Run
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars.cmake
new file mode 100644
index 0000000..883c5b6
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialChars.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-FormerInvalidSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialCharsMC-ctest-stderr.txt b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialCharsMC-ctest-stderr.txt
new file mode 100644
index 0000000..06ad927
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialCharsMC-ctest-stderr.txt
@@ -0,0 +1,3 @@
+CMake Error at CTestTestfile.cmake:[0-9]+:
+ Parse error. Function missing ending "\)". Instead found unterminated
+ string with text "\\ NOT_AVAILABLE\)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialCharsMC.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialCharsMC.cmake
new file mode 100644
index 0000000..47e03bc
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-FormerInvalidSpecialCharsMC.cmake
@@ -0,0 +1 @@
+include(CMP0110-OLD-FormerInvalidSpecialChars.cmake NO_POLICY_SCOPE)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-GeneratorExpressionSyntax.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-GeneratorExpressionSyntax.cmake
new file mode 100644
index 0000000..7ee6b50
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-GeneratorExpressionSyntax.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-GeneratorExpressionSyntax.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-LeadingAndTrailingWhitespace-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-OLD-LeadingAndTrailingWhitespace-ctest-stdout.txt
new file mode 100644
index 0000000..870483e
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-LeadingAndTrailingWhitespace-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: SurroundedByWhitespace \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-LeadingAndTrailingWhitespace.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-LeadingAndTrailingWhitespace.cmake
new file mode 100644
index 0000000..a20d211
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-LeadingAndTrailingWhitespace.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-LeadingAndTrailingWhitespace.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-OtherSpecialChars-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-OLD-OtherSpecialChars-ctest-stdout.txt
new file mode 100644
index 0000000..8ee3ea9
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-OtherSpecialChars-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: !§%&/ü:\*😤~ \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-OtherSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-OtherSpecialChars.cmake
new file mode 100644
index 0000000..0e88183
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-OtherSpecialChars.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-OtherSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-Quote-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-OLD-Quote-ctest-stdout.txt
new file mode 100644
index 0000000..23dafd4
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-Quote-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: BeforeQuote""AfterEscapedQuote \.+[ ]+Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-Quote.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-Quote.cmake
new file mode 100644
index 0000000..c910a7c
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-Quote.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-Quote.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-result.txt b/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-result.txt
new file mode 100644
index 0000000..45a4fb7
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-result.txt
@@ -0,0 +1 @@
+8
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-stderr.txt b/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-stderr.txt
new file mode 100644
index 0000000..0d43768
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-stderr.txt
@@ -0,0 +1 @@
+Unable to find executable: AfterSemi
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-stdout.txt
new file mode 100644
index 0000000..0a6ebed
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: BeforeSemi \.+\*\*\*Not Run
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon.cmake
new file mode 100644
index 0000000..283aeed
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-Semicolon.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-Semicolon.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-result.txt b/Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-result.txt
new file mode 100644
index 0000000..45a4fb7
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-result.txt
@@ -0,0 +1 @@
+8
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-stderr.txt b/Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-stderr.txt
new file mode 100644
index 0000000..2ded1d4
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-stderr.txt
@@ -0,0 +1 @@
+Unable to find executable: AfterSpace
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-stdout.txt
new file mode 100644
index 0000000..059c625
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-Space-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: BeforeSpace \.+\*\*\*Not Run
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-Space.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-Space.cmake
new file mode 100644
index 0000000..46f7c26
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-Space.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-Space.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-ValidSpecialChars-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-OLD-ValidSpecialChars-ctest-stdout.txt
new file mode 100644
index 0000000..ae1a0b1
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-ValidSpecialChars-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: abc_\.\+-012 \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-OLD-ValidSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-OLD-ValidSpecialChars.cmake
new file mode 100644
index 0000000..ffc6462
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-OLD-ValidSpecialChars.cmake
@@ -0,0 +1,2 @@
+cmake_policy(SET CMP0110 OLD)
+include(CMP0110-Common-ValidSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-Test.cmake b/Tests/RunCMake/add_test/CMP0110-Test.cmake
new file mode 100644
index 0000000..3f1dfad
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-Test.cmake
@@ -0,0 +1,3 @@
+if(NOT DEFINED ENV{CMAKE_add_test_ENVVAR})
+ message(FATAL_ERROR "Setting property on test did not succeed!")
+endif()
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-AlphaNumeric-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-WARN-AlphaNumeric-ctest-stdout.txt
new file mode 100644
index 0000000..ed939bf
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-AlphaNumeric-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: abcdefghijklmnopqrstuvwxyz0123456789 \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-AlphaNumeric.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-AlphaNumeric.cmake
new file mode 100644
index 0000000..d2af2aa
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-AlphaNumeric.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-AlphaNumeric.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument-ctest-stdout.txt
new file mode 100644
index 0000000..093f5d4
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: InBracketBeforeSemi;InBracketAfterSemi \.+[ ]+Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument-stderr.txt
new file mode 100644
index 0000000..19e60c1
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument-stderr.txt
@@ -0,0 +1,11 @@
+CMake Warning \(dev\) in CMakeLists\.txt:
+ Policy CMP0110 is not set: add_test\(\) supports arbitrary characters in test
+ names\. Run "cmake --help-policy CMP0110" for policy details\. Use the
+ cmake_policy command to set the policy and suppress this warning\.
+
+ The following name given to add_test\(\) is invalid if CMP0110 is not set or
+ set to OLD:
+
+ `\[=\[InBracketBeforeSemi;InBracketAfterSemi\]=\]´
+
+This warning is for project developers\. Use -Wno-dev to suppress it\.
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument.cmake
new file mode 100644
index 0000000..7887658
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-BracketArgument.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-BracketArgument.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars-ctest-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars-ctest-stderr.txt
new file mode 100644
index 0000000..ec2cf2c
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars-ctest-stderr.txt
@@ -0,0 +1,5 @@
+CMake Error at CTestTestfile.cmake:[0-9]+:
+ Parse error\. Function missing ending "\)"\. End of file reached\.
+
+
+No tests were found!!!
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars-stderr.txt
new file mode 100644
index 0000000..057f2d6
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars-stderr.txt
@@ -0,0 +1,11 @@
+CMake Warning \(dev\) in CMakeLists\.txt:
+ Policy CMP0110 is not set: add_test\(\) supports arbitrary characters in test
+ names\. Run "cmake --help-policy CMP0110" for policy details\. Use the
+ cmake_policy command to set the policy and suppress this warning\.
+
+ The following name given to add_test\(\) is invalid if CMP0110 is not set or
+ set to OLD:
+
+ `\(\) #´
+
+This warning is for project developers\. Use -Wno-dev to suppress it\.
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars.cmake
new file mode 100644
index 0000000..ca27462
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-EscapedSpecialChars.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-EscapedSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-result.txt b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-result.txt
new file mode 100644
index 0000000..45a4fb7
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-result.txt
@@ -0,0 +1 @@
+8
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-stderr.txt
new file mode 100644
index 0000000..c656b4c
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-stderr.txt
@@ -0,0 +1 @@
+Unable to find executable:
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-stdout.txt
new file mode 100644
index 0000000..d3b0fac
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: \$\[\] \.+\*\*\*Not Run
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-stderr.txt
new file mode 100644
index 0000000..4f20ab9
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars-stderr.txt
@@ -0,0 +1,13 @@
+CMake Warning \(dev\) in CMakeLists\.txt:
+ Policy CMP0110 is not set: add_test\(\) supports arbitrary characters in test
+ names\. Run "cmake --help-policy CMP0110" for policy details\. Use the
+ cmake_policy command to set the policy and suppress this warning\.
+
+ The following name given to add_test\(\) is invalid if CMP0110 is not set or
+ set to OLD:
+
+ `\$\[\] #;[ ]
+
+ "\\´
+
+This warning is for project developers\. Use -Wno-dev to suppress it.
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars.cmake
new file mode 100644
index 0000000..3b689c2
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialChars.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-FormerInvalidSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC-ctest-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC-ctest-stderr.txt
new file mode 100644
index 0000000..06ad927
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC-ctest-stderr.txt
@@ -0,0 +1,3 @@
+CMake Error at CTestTestfile.cmake:[0-9]+:
+ Parse error. Function missing ending "\)". Instead found unterminated
+ string with text "\\ NOT_AVAILABLE\)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC-stderr.txt
new file mode 100644
index 0000000..4f20ab9
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC-stderr.txt
@@ -0,0 +1,13 @@
+CMake Warning \(dev\) in CMakeLists\.txt:
+ Policy CMP0110 is not set: add_test\(\) supports arbitrary characters in test
+ names\. Run "cmake --help-policy CMP0110" for policy details\. Use the
+ cmake_policy command to set the policy and suppress this warning\.
+
+ The following name given to add_test\(\) is invalid if CMP0110 is not set or
+ set to OLD:
+
+ `\$\[\] #;[ ]
+
+ "\\´
+
+This warning is for project developers\. Use -Wno-dev to suppress it.
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC.cmake
new file mode 100644
index 0000000..f77ff5c
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-FormerInvalidSpecialCharsMC.cmake
@@ -0,0 +1 @@
+include(CMP0110-WARN-FormerInvalidSpecialChars.cmake NO_POLICY_SCOPE)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-GeneratorExpressionSyntax.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-GeneratorExpressionSyntax.cmake
new file mode 100644
index 0000000..77c9ed2
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-GeneratorExpressionSyntax.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-GeneratorExpressionSyntax.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace-ctest-stdout.txt
new file mode 100644
index 0000000..870483e
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: SurroundedByWhitespace \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace-stderr.txt
new file mode 100644
index 0000000..a392fed
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace-stderr.txt
@@ -0,0 +1,11 @@
+CMake Warning \(dev\) in CMakeLists\.txt:
+ Policy CMP0110 is not set: add_test\(\) supports arbitrary characters in test
+ names\. Run "cmake --help-policy CMP0110" for policy details\. Use the
+ cmake_policy command to set the policy and suppress this warning\.
+
+ The following name given to add_test\(\) is invalid if CMP0110 is not set or
+ set to OLD:
+
+ ` SurroundedByWhitespace ´
+
+This warning is for project developers\. Use -Wno-dev to suppress it\.
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace.cmake
new file mode 100644
index 0000000..322bb4a
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-LeadingAndTrailingWhitespace.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-LeadingAndTrailingWhitespace.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-OtherSpecialChars-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-WARN-OtherSpecialChars-ctest-stdout.txt
new file mode 100644
index 0000000..8ee3ea9
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-OtherSpecialChars-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: !§%&/ü:\*😤~ \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-OtherSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-OtherSpecialChars.cmake
new file mode 100644
index 0000000..19fa6e6
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-OtherSpecialChars.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-OtherSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Quote-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-WARN-Quote-ctest-stdout.txt
new file mode 100644
index 0000000..23dafd4
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Quote-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: BeforeQuote""AfterEscapedQuote \.+[ ]+Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Quote-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-Quote-stderr.txt
new file mode 100644
index 0000000..39f3a92
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Quote-stderr.txt
@@ -0,0 +1,11 @@
+CMake Warning \(dev\) in CMakeLists\.txt:
+ Policy CMP0110 is not set: add_test\(\) supports arbitrary characters in test
+ names\. Run "cmake --help-policy CMP0110" for policy details\. Use the
+ cmake_policy command to set the policy and suppress this warning\.
+
+ The following name given to add_test\(\) is invalid if CMP0110 is not set or
+ set to OLD:
+
+ `BeforeQuote""AfterEscapedQuote´
+
+This warning is for project developers\. Use -Wno-dev to suppress it\.
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Quote.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-Quote.cmake
new file mode 100644
index 0000000..33aaad0
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Quote.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-Quote.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-result.txt b/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-result.txt
new file mode 100644
index 0000000..45a4fb7
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-result.txt
@@ -0,0 +1 @@
+8
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-stderr.txt
new file mode 100644
index 0000000..0d43768
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-stderr.txt
@@ -0,0 +1 @@
+Unable to find executable: AfterSemi
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-stdout.txt
new file mode 100644
index 0000000..0a6ebed
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: BeforeSemi \.+\*\*\*Not Run
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-stderr.txt
new file mode 100644
index 0000000..5101618
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon-stderr.txt
@@ -0,0 +1,11 @@
+CMake Warning \(dev\) in CMakeLists\.txt:
+ Policy CMP0110 is not set: add_test\(\) supports arbitrary characters in test
+ names\. Run "cmake --help-policy CMP0110" for policy details\. Use the
+ cmake_policy command to set the policy and suppress this warning\.
+
+ The following name given to add_test\(\) is invalid if CMP0110 is not set or
+ set to OLD:
+
+ `BeforeSemi;AfterSemi´
+
+This warning is for project developers\. Use -Wno-dev to suppress it\.
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon.cmake
new file mode 100644
index 0000000..c5da394
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Semicolon.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-Semicolon.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-result.txt b/Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-result.txt
new file mode 100644
index 0000000..45a4fb7
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-result.txt
@@ -0,0 +1 @@
+8
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-stderr.txt
new file mode 100644
index 0000000..2ded1d4
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-stderr.txt
@@ -0,0 +1 @@
+Unable to find executable: AfterSpace
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-stdout.txt
new file mode 100644
index 0000000..059c625
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Space-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: BeforeSpace \.+\*\*\*Not Run
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Space-stderr.txt b/Tests/RunCMake/add_test/CMP0110-WARN-Space-stderr.txt
new file mode 100644
index 0000000..862eaa2
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Space-stderr.txt
@@ -0,0 +1,11 @@
+CMake Warning \(dev\) in CMakeLists\.txt:
+ Policy CMP0110 is not set: add_test\(\) supports arbitrary characters in test
+ names\. Run "cmake --help-policy CMP0110" for policy details\. Use the
+ cmake_policy command to set the policy and suppress this warning\.
+
+ The following name given to add_test\(\) is invalid if CMP0110 is not set or
+ set to OLD:
+
+ `BeforeSpace AfterSpace´
+
+This warning is for project developers\. Use -Wno-dev to suppress it\.
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-Space.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-Space.cmake
new file mode 100644
index 0000000..1f3234c
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-Space.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-Space.cmake)
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-ValidSpecialChars-ctest-stdout.txt b/Tests/RunCMake/add_test/CMP0110-WARN-ValidSpecialChars-ctest-stdout.txt
new file mode 100644
index 0000000..ae1a0b1
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-ValidSpecialChars-ctest-stdout.txt
@@ -0,0 +1 @@
+Test #[0-9]+: abc_\.\+-012 \.+[ ]*Passed
diff --git a/Tests/RunCMake/add_test/CMP0110-WARN-ValidSpecialChars.cmake b/Tests/RunCMake/add_test/CMP0110-WARN-ValidSpecialChars.cmake
new file mode 100644
index 0000000..687c899
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMP0110-WARN-ValidSpecialChars.cmake
@@ -0,0 +1,2 @@
+# CMP0110 not set
+include(CMP0110-Common-ValidSpecialChars.cmake)
diff --git a/Tests/RunCMake/add_test/CMakeLists.txt b/Tests/RunCMake/add_test/CMakeLists.txt
new file mode 100644
index 0000000..ee8fc29
--- /dev/null
+++ b/Tests/RunCMake/add_test/CMakeLists.txt
@@ -0,0 +1,3 @@
+cmake_minimum_required(VERSION 3.18)
+project(${RunCMake_TEST} NONE)
+include(${RunCMake_TEST}.cmake NO_POLICY_SCOPE)
diff --git a/Tests/RunCMake/add_test/RunCMakeTest.cmake b/Tests/RunCMake/add_test/RunCMakeTest.cmake
new file mode 100644
index 0000000..bf6cbff
--- /dev/null
+++ b/Tests/RunCMake/add_test/RunCMakeTest.cmake
@@ -0,0 +1,35 @@
+include(RunCMake)
+
+set(ENV{CTEST_OUTPUT_ON_FAILURE} 1)
+
+function(run_case CASE_NAME)
+ set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/CMP0110-${CASE_NAME}-build)
+ run_cmake(CMP0110-${CASE_NAME})
+ # Run ctest on the generated CTestTestfile.cmake.
+ set(RunCMake_TEST_NO_CLEAN 1)
+ run_cmake_command(CMP0110-${CASE_NAME}-ctest ${CMAKE_CTEST_COMMAND} -C Debug)
+endfunction()
+
+set(cases
+ AlphaNumeric
+ ValidSpecialChars
+ OtherSpecialChars
+ EscapedSpecialChars
+ Space
+ LeadingAndTrailingWhitespace
+ Semicolon
+ Quote
+ BracketArgument
+ )
+
+if(RunCMake_GENERATOR_IS_MULTI_CONFIG)
+ list(APPEND cases FormerInvalidSpecialCharsMC)
+else()
+ list(APPEND cases FormerInvalidSpecialChars)
+endif()
+
+foreach(case IN LISTS cases)
+ run_case(WARN-${case})
+ run_case(OLD-${case})
+ run_case(NEW-${case})
+endforeach()