summaryrefslogtreecommitdiffstats
path: root/Source/cmCTest.h
Commit message (Collapse)AuthorAgeFilesLines
* CTest: hide progress ticks in verbose outputDaniel Pfeifer2015-07-061-0/+1
| | | | | | | | | | The progress ticks and information about the length of the output are useful when the actual output is not visible. When the output is printed, the progress ticks * add no useful information, * do not look pretty, and * make the output hard to parse for tools.
* ctest: Optionally avoid starting tests that may exceed a given CPU loadBetsy McPhail2015-06-301-0/+5
| | | | | | | | | | | | | | Add a TestLoad setting to CTest that can be set via a new --test-load command-line option, CTEST_TEST_LOAD variable, or TEST_LOAD option to the ctest_test command. Teach cmCTestMultiProcessHandler to measure the CPU load and avoid starting tests that may take more than the spare load currently available. The expression <current_load> + <test_processors> <= <max-load> must be true to start a new test. Co-Author: Zack Galbreath <zack.galbreath@kitware.com>
* cmCTest: Drop unused method overloadsDaniel Pfeifer2015-05-261-3/+0
| | | | | | The StartXML, EndXML, and AddSiteProperties overloads that take a stream directly are no longer called anywhere. All clients hvae been ported to cmXMLWriter. Drop the old overloads.
* cmCTest: Port GenerateNotesFile to cmXMLWriterDaniel Pfeifer2015-05-261-1/+1
|
* cmCTest: Port to cmXMLWriterDaniel Pfeifer2015-05-261-0/+4
| | | | | Re-implement StartXML, EndXML, and AddSiteProperties using cmXMLWriter. Leave the old overloads behind for use by CTest/* until they are ported.
* ctest: Add a new --repeat-until-fail optionBill Hoffman2015-03-231-3/+9
| | | | | This option tells ctest to run each test N times until the test fails or the N times have run. This is useful for finding random failing tests.
* CTest: Add cmCTestOptionalLog macroZack Galbreath2015-02-231-3/+13
| | | | | | | | | cmCTestOptionalLog takes a boolean argument that indicates whether or not the message should be suppressed. Note that error messages will still be printed, even if suppression is requested. This macro will allow us to provide more fine-grained control over what messages CTest prints to the console.
* Port all cmOStringStream to std::ostringstream.Stephen Kelly2015-01-111-1/+1
| | | | All compilers hosting CMake support the std class.
* Change output to be a reference and not a pointer.Bill Hoffman2014-08-041-1/+1
| | | | | This avoids having to check the pointer value at each use which was not being done.
* Remove extra semicolons from C++ code.Stephen Kelly2014-04-031-3/+3
| | | | | Clang based tools running over the code complain about these, but clang has a fixit for removing them.
* strings: Remove cmStdString referencesBen Boeckel2014-03-081-10/+10
| | | | | | | | | | | Casts from std::string -> cmStdString were high on the list of things taking up time. Avoid such implicit casts across function calls by just using std::string everywhere. The comment that the symbol name is too long is no longer relevant since modern debuggers alias the templates anyways and the size is a non-issue since the underlying methods are generated since it's inherited.
* stringapi: Use strings for test namesBen Boeckel2014-03-081-3/+3
|
* stringapi: Use strings for variable namesBen Boeckel2014-03-081-4/+4
| | | | Variable names are always generated by CMake and should never be NULL.
* Use cmsys::[io]fstream instead of cmsys_ios::[io]fstream.Clinton Stimpson2014-01-071-1/+1
| | | | | Also use SystemTools::Fopen() instead of fopen(). This is to eventually support utf-8 filenames.
* Refactor internal resource location APIs and initializationBrad King2013-11-121-9/+0
| | | | | | | | | | | | | | | | | | | | Rename cmSystemTools::FindExecutableDirectory to FindCMakeResources. Teach it to compute the locations of cmake, ctest, cpack, ccmake, and cmake-gui executables, and the location of CMAKE_ROOT. Provide this information from static cmSystemTools::Get<resource>() methods. Refactor code that needs these locations to use the new APIs. Teach FindCMakeResources to use the OS X system API to lookup the executable location. When running from the CMake build tree itself, leave a file in the tree that FindCMakeResources can use to read the location of the source tree. This avoids the need to compile the source tree location into a binary that may be installed and used without the source tree. Teach the QtDialog on OS X to create a "cmake-gui" symlink in the build tree next to "cmake" and the other tools, as is already done in the install tree for the application bundle. This ensures a consistent set of executables are available in one directory.
* CTest: Read CTEST_PARALLEL_LEVEL from environmentStephen Kelly2013-05-211-0/+1
| | | | | If no explicit "-j <n>" option is given on the command line then read the parallel level from an environment variable.
* Merge topic 'ctest-SUBMIT_INDEX-cdash'Brad King2012-11-061-0/+2
|\ | | | | | | | | 1cfaa2f CTest: Allow SUBMIT_INDEX with CDash
| * CTest: Allow SUBMIT_INDEX with CDashBrad King2012-11-011-0/+2
| | | | | | | | | | If CTEST_DROP_SITE_CDASH is true then SUBMIT_INDEX is supported. The Dart version does not matter because the server is not Dart.
* | Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our Git commit hooks disallow modification or addition of lines with trailing whitespace. Wipe out all remnants of trailing whitespace everywhere except third-party code. Run the following shell code: git ls-files -z -- \ bootstrap doxygen.config '*.readme' \ '*.c' '*.cmake' '*.cpp' '*.cxx' \ '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \ '*.mm' '*.pike' '*.py' '*.txt' '*.vim' | egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' | egrep -z -v '^(Modules/CPack\..*\.in)' | xargs -0 sed -i 's/ \+$//'
* | CTest: Extend -D command line arg handling for variable definitionsDavid Cole2012-06-241-0/+10
| | | | | | | | | | | | If the argument following -D is not a valid dashboard type string, then try to parse it as a "var:type=value" string just like cmake already does.
* | CTest: Refactor error output into ErrorMessageUnknownDashDValueDavid Cole2012-06-241-0/+4
|/ | | | | No behavior change. Prep work for defining script variables by extending -D command line handling to recognize var:type=value syntax.
* CTest: Disallow problem chars in build and site names (#11792)David Cole2011-11-181-0/+4
| | | | | Also, use "(empty)" rather than actually sending an empty string if build or site name is not set properly.
* We will actually compress memcheck output if the server supports it.Zach Mullen2011-05-261-2/+5
| | | | | This change won't be functional until the next release of CDash due to the version comparison.
* Don't tar/gz ctest_upload() filesZach Mullen2011-03-151-0/+2
|
* Implement ctest_upload commandZach Mullen2011-03-151-2/+6
|
* Added CTest command --print-labelsZach Mullen2010-08-311-0/+3
| | | | | | This command allows a user to quickly see the list of all available test labels. The labels are also printed in verbose show only mode, alongside their corresponding tests.
* Better detection of stop_time being passed.Zach Mullen2010-03-191-0/+2
|
* Add the --stop-time argumentZach Mullen2010-03-171-0/+7
| | | | Unit test and script hook for STOP_TIME
* Configurable path to CTest cost data fileZach Mullen2010-03-011-0/+2
| | | | Allow the user to set the CMake variable CTEST_COST_DATA_FILE, which will be used to store the cost data from test runs. If not set, defaults to the original location in the build tree Testing/Temporary dir.
* Enhanced CTest HTTP Request API to support PUT file uploads.Zach Mullen2009-12-301-2/+4
|
* Fix issue #10060 - add APPEND arg to ctest_start command.David Cole2009-12-291-4/+4
| | | | If APPEND is given to ctest_start, it will read the tag from the current existing Testing/TAG file rather than creating a new one based on the current time stamp. This allows a developer to run several dashboard scripts in a row, all of which will share the same tag/stamp/buildid when they finally get submitted to CDash. Now you can split the running of build phases and test phases for the same dashboard row into multiple scripts.
* Move cURL dependent code out of CMakeLib to fix complex tests.Zach Mullen2009-12-221-0/+13
|
* Query the CDash web API to automate CDash version detection.Zach Mullen2009-12-211-0/+2
|
* Added support for CTest awareness of the CDash version. This will help ↵Zach Mullen2009-12-211-1/+4
| | | | forward compatibility for both tools. Note that this changeset effectively makes the default to disable output compression. Now, to enable output compression, the CDASH_CTEST_VERSION must be explicity set to >= 1.6. Automated detection of the CDash version is the next step.
* Added an option to conditionally attach files to a test submission only if ↵Zach Mullen2009-12-161-0/+4
| | | | the test does not pass. Also some preliminary changes for test output compression.
* Added a "-http1.0" option to ctest to make it submit using curl's http 1.0 ↵Zach Mullen2009-12-111-1/+3
| | | | option. Also added parsing of html reponse output to determine whether errors or warnings were sent in response from the server. If errors or warnings occurred, the response is output to stdout, and the "submission successful" message has been changed to accurately reflect whether or not warnings or errors were returned with the response.
* Added the --timeout option to ctest command line. This sets a global ↵Zach Mullen2009-11-301-0/+5
| | | | timeout on all tests if no more specific timeout is set on them.
* CTest: Move initial checkout to ctest_start()Brad King2009-11-241-1/+2
| | | | | | | | | | | | | | | | | | | | In CTest command-driven script mode we support starting without a source tree. Previously the ctest_start() command would do some initialization but could not do anything that required CTestConfig.cmake from the input source tree. Later, ctest_update() would run CTEST_CHECKOUT_COMMAND to create the source tree, and then re-initialize everything. This delayed-initialization approach led to many complicated cases of which only some worked. For example, the second initialization only worked correctly in Nightly mode and simply failed for Experimental and Continuous builds. A simpler solution is to run CTEST_CHECKOUT_COMMAND during ctest_start() and then have a single initialization path. In principle this change in behavior could break scripts that set the checkout command after ctest_start() but before ctest_update(). However, the convention we've always followed has been to set all variables before ctest_start(). See issue #9450.
* CTest: Simplify Initialize method signatureBrad King2009-11-241-2/+9
| | | | | | We make the cmCTest::Initialize method private since it is only called from inside the class implementation. We also combine the two boolean arguments into one since they both meant the same thing.
* Hook for scheduling tests in a random orderZach Mullen2009-10-291-0/+4
| | | | | This may help statistically detect implicit dependencies among unit tests while running in parallel.
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
* Add label summary times to ctest default output. Also, remove parallel time ↵Bill Hoffman2009-09-111-0/+2
| | | | output. Add flag to disable label summary.
* Fixed ctest output where max test index is not the same width as the total ↵Zach Mullen2009-09-021-0/+5
| | | | number of tests. Also some preliminary changes for batching ctest jobs
* Fixed ctest -N segfault issue. Further refactored ctest. Enabled failover ↵Zach Mullen2009-08-271-12/+6
| | | | for ctest
* ENH: refactored ctest. All testing is now parallel. If no -j option is ↵Zach Mullen2009-08-261-1/+1
| | | | specified, defaults to a MP level of 1 (non parallel)
* ENH: Refactored CTest test execution code into an objectZach Mullen2009-08-191-0/+1
|
* BUG: Do not carry over file list between coverageBrad King2009-03-111-0/+1
| | | | | | | | When performing multiple ctest_coverage() commands in a single CTest instance we need to clear the list of CoverageLog-*.xml files for submission. Otherwise if the current coverage run produces fewer log files than the previous run CTest will attempt to submit non-existing files.
* ENH: Add cmCTest::DecodeURL methodBrad King2009-02-241-0/+3
| | | | This new method decodes the "percent-encoding" used in URL syntax.
* STYLE: Add TODO comment about CTest configurationBrad King2009-02-131-0/+4
| | | | | | Currently CTest does not load configuration settings computed at CMake Configure time when running a dashboard script. This adds a comment describing refactoring that might help resolve the problem.
* ENH: Create cmXMLSafe to help escapes in XMLBrad King2009-02-051-3/+0
| | | | | | | This class provides easy syntax to efficiently insert blocks of data into XML documents with proper escapes. It replaces the old cmCTest::MakeXMLSafe and cmSystemTools::MakeXMLSafe methods which allocated extra memory instead of directly streaming the data.