ENH: check in almost building VMS stuff with VMSBuild directory since the bootstrap...
[cmake.git] / Source / CTest / cmCTestSubmitCommand.h
blob604997d5f33730b9ac55e9a67ab74c9cbc7844e5
1 /*=========================================================================
3 Program: CMake - Cross-Platform Makefile Generator
4 Module: $RCSfile: cmCTestSubmitCommand.h,v $
5 Language: C++
6 Date: $Date: 2009-02-20 20:50:15 $
7 Version: $Revision: 1.9 $
9 Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
10 See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
12 This software is distributed WITHOUT ANY WARRANTY; without even
13 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14 PURPOSE. See the above copyright notices for more information.
16 =========================================================================*/
17 #ifndef cmCTestSubmitCommand_h
18 #define cmCTestSubmitCommand_h
20 #include "cmCTestHandlerCommand.h"
21 #include "cmCTest.h"
23 /** \class cmCTestSubmit
24 * \brief Run a ctest script
26 * cmCTestSubmitCommand defineds the command to submit the test results for
27 * the project.
29 class cmCTestSubmitCommand : public cmCTestHandlerCommand
31 public:
33 cmCTestSubmitCommand()
35 this->PartsMentioned = false;
36 this->FilesMentioned = false;
39 /**
40 * This is a virtual constructor for the command.
42 virtual cmCommand* Clone()
44 cmCTestSubmitCommand* ni = new cmCTestSubmitCommand;
45 ni->CTest = this->CTest;
46 ni->CTestScriptHandler = this->CTestScriptHandler;
47 return ni;
50 /**
51 * The name of the command as specified in CMakeList.txt.
53 virtual const char* GetName() { return "ctest_submit";}
55 /**
56 * Succinct documentation.
58 virtual const char* GetTerseDocumentation()
60 return "Submit results to a dashboard server.";
63 /**
64 * More documentation.
66 virtual const char* GetFullDocumentation()
68 return
69 " ctest_submit([PARTS ...] [FILES ...] [RETURN_VALUE res])\n"
70 "By default all available parts are submitted if no PARTS or FILES "
71 "are specified. "
72 "The PARTS option lists a subset of parts to be submitted. "
73 "Valid part names are:\n"
74 " Start = nothing\n"
75 " Update = ctest_update results, in Update.xml\n"
76 " Configure = ctest_configure results, in Configure.xml\n"
77 " Build = ctest_build results, in Build.xml\n"
78 " Test = ctest_test results, in Test.xml\n"
79 " Coverage = ctest_coverage results, in Coverage.xml\n"
80 " MemCheck = ctest_memcheck results, in DynamicAnalysis.xml\n"
81 " Notes = Files listed by CTEST_NOTES_FILES, in Notes.xml\n"
82 " ExtraFiles = Files listed by CTEST_EXTRA_SUBMIT_FILES\n"
83 " Submit = nothing\n"
84 "The FILES option explicitly lists specific files to be submitted. "
85 "Each individual file must exist at the time of the call.\n";
88 cmTypeMacro(cmCTestSubmitCommand, cmCTestHandlerCommand);
90 protected:
91 cmCTestGenericHandler* InitializeHandler();
93 virtual bool CheckArgumentKeyword(std::string const& arg);
94 virtual bool CheckArgumentValue(std::string const& arg);
96 enum
98 ArgumentDoingParts = Superclass::ArgumentDoingLast1,
99 ArgumentDoingFiles,
100 ArgumentDoingLast2
103 bool PartsMentioned;
104 std::set<cmCTest::Part> Parts;
105 bool FilesMentioned;
106 cmCTest::SetOfStrings Files;
110 #endif