diff --git a/CMakeLists.txt b/CMakeLists.txt
index 05af8d87e6f6481010de834e0b34f0b359d6e61b..7dd85c2548e0fd117f36186ffe5042335c0f67c7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -650,11 +650,13 @@ IF(KWSYS_STANDALONE OR CMake_SOURCE_DIR)
     ADD_TEST(kwsys.testProcess-7 ${EXEC_DIR}/testProcess 7)
     ADD_TEST(kwsys.testHashSTL ${EXEC_DIR}/testHashSTL)
     ADD_TEST(kwsys.testRegistry ${EXEC_DIR}/testRegistry)
-    IF(COMMAND SET_TESTS_PROPERTIES AND COMMAND GET_TEST_PROPERTY)
+    IF(COMMAND SET_TESTS_PROPERTIES AND COMMAND GET_TEST_PROPERTY AND KWSYS_STANDALONE)
       ADD_TEST(kwsys.testFail ${EXEC_DIR}/testFail)
       SET_TESTS_PROPERTIES(kwsys.testFail PROPERTIES WILL_FAIL ON)
       GET_TEST_PROPERTY(kwsys.testFail WILL_FAIL wfv)
+      SET_TESTS_PROPERTIES(kwsys.testRegistry PROPERTIES ERROR_REGULAR_EXPRESSION "ERROR\$;FAIL;Test failed")
+      SET_TESTS_PROPERTIES(kwsys.testRegistry PROPERTIES REQUIRED_REGULAR_EXPRESSION "Test passed")
       MESSAGE(STATUS "GET_TEST_PROPERTY returned: ${wfv}")
-    ENDIF(COMMAND SET_TESTS_PROPERTIES AND COMMAND GET_TEST_PROPERTY)
+    ENDIF(COMMAND SET_TESTS_PROPERTIES AND COMMAND GET_TEST_PROPERTY AND KWSYS_STANDALONE)
   ENDIF(BUILD_TESTING)
 ENDIF(KWSYS_STANDALONE OR CMake_SOURCE_DIR)
diff --git a/testRegistry.cxx b/testRegistry.cxx
index e03350825a56e1d45a45510cb4218c4aee0cc659..6b06e1ea833862cd2a1369fab1d2d4ab7631265d 100644
--- a/testRegistry.cxx
+++ b/testRegistry.cxx
@@ -103,5 +103,9 @@ int main(int, char**)
     {
     kwsys_ios::cout << "Test failed" << kwsys_ios::endl;
     }
+  else
+    {
+    kwsys_ios::cout << "Test passed" << kwsys_ios::endl;
+    }
   return res;
 }