summaryrefslogtreecommitdiffstats
path: root/Source/cmTestGenerator.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-03-16 14:40:46 (GMT)
committerBrad King <brad.king@kitware.com>2009-03-16 14:40:46 (GMT)
commit66d69f864ae880f556debf02e66dee4855b0f2df (patch)
tree562a710c7c071a8dbfd83a15abd35e3a62ec4681 /Source/cmTestGenerator.h
parente67f5138b80b3b04844f3f5c0a3c69796266f9e6 (diff)
downloadCMake-66d69f864ae880f556debf02e66dee4855b0f2df.zip
CMake-66d69f864ae880f556debf02e66dee4855b0f2df.tar.gz
CMake-66d69f864ae880f556debf02e66dee4855b0f2df.tar.bz2
ENH: Refactor generation of CTestTestfile content
This moves code which generates ADD_TEST and SET_TESTS_PROPERTIES calls into CTestTestfile.cmake files out of cmLocalGenerator and into a cmTestGenerator class. This will allow more advanced generation without cluttering cmLocalGenerator. The cmTestGenerator class derives from cmScriptGenerator to get support for per-configuration script generation (not yet enabled).
Diffstat (limited to 'Source/cmTestGenerator.h')
-rw-r--r--Source/cmTestGenerator.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/Source/cmTestGenerator.h b/Source/cmTestGenerator.h
new file mode 100644
index 0000000..021be39
--- /dev/null
+++ b/Source/cmTestGenerator.h
@@ -0,0 +1,44 @@
+/*=========================================================================
+
+ Program: CMake - Cross-Platform Makefile Generator
+ Module: $RCSfile$
+ Language: C++
+ Date: $Date$
+ Version: $Revision$
+
+ Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
+ See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
+
+ This software is distributed WITHOUT ANY WARRANTY; without even
+ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the above copyright notices for more information.
+
+=========================================================================*/
+#ifndef cmTestGenerator_h
+#define cmTestGenerator_h
+
+#include "cmScriptGenerator.h"
+
+class cmTest;
+
+/** \class cmTestGenerator
+ * \brief Support class for generating install scripts.
+ *
+ */
+class cmTestGenerator: public cmScriptGenerator
+{
+public:
+ cmTestGenerator(cmTest* test,
+ std::vector<std::string> const&
+ configurations = std::vector<std::string>());
+ virtual ~cmTestGenerator();
+
+protected:
+ virtual void GenerateScriptConfigs(std::ostream& os, Indent const& indent);
+ virtual void GenerateScriptActions(std::ostream& os, Indent const& indent);
+
+ cmTest* Test;
+ bool TestGenerated;
+};
+
+#endif