summaryrefslogtreecommitdiffstats
path: root/Source/cmCTest.h
Commit message (Collapse)AuthorAgeFilesLines
* CTest: Use std::string argumentsVitaly Stakhovsky2023-01-031-1/+1
|
* CTest: Add support for outputJUnitFile in presetsKyle Edwards2022-10-181-0/+3
| | | | Fixes: #22400
* ctest: add support for attaching files to tests at run timeZack Galbreath2021-06-081-0/+3
| | | | | | | | | | | | | | Allow tests to specify files to upload at runtime. Previously this was only possible to specify at configure time with the ATTACHED_FILES test properties. This commit also fixes a bug in how our test data tarballs were generated by CTest. Previously, if you tried to attach a file outside of the binary directory, CTest would generate a tar file with a relative path, and tar would not allow you to extract it. We resolve this problem by creating tar files with a flat directory structure instead. Fixes: #22284
* ctest: Support multiple -L and -LE options to mean "AND"Adriaan de Groot2021-03-281-0/+2
| | | | Fixes: #21087
* cmake-presets: Add build and test presetsSam Freed2021-02-011-0/+6
| | | | Fixes: #21391
* Modernize: Use #pragma once in all header filesKitware Robot2020-09-031-4/+1
| | | | | | | | | | | | | | | | #pragma once is a widely supported compiler pragma, even though it is not part of the C++ standard. Many of the issues keeping #pragma once from being standardized (distributed filesystems, build farms, hard links, etc.) do not apply to CMake - it is easy to build CMake on a single machine. CMake also does not install any header files which can be consumed by other projects (though cmCPluginAPI.h has been deliberately omitted from this conversion in case anyone is still using it.) Finally, #pragma once has been required to build CMake since at least August 2017 (7f29bbe6 enabled server mode unconditionally, which had been using #pragma once since September 2016 (b13d3e0d)). The fact that we now require C++11 filters out old compilers, and it is unlikely that there is a compiler which supports C++11 but does not support #pragma once.
* cmCTest: Members accept std::string parametersVitaly Stakhovsky2020-07-271-13/+13
|
* ctest: add option --stop-on-failureJohnny Jazeix2020-04-201-0/+3
| | | | | | To stop the tests once one has failed Fixes: #16628
* use _s to construct static string_views at several placesRolf Eike Beer2020-03-241-2/+4
| | | | This should avoid the runtime strlen() call.
* allow cmCTest::CleanString() to skip input charactersRolf Eike Beer2020-03-231-1/+2
| | | | | This entirely avoids that one needs to call std::string::substr() for the input.
* Add --no-tests=<[error|ignore]> option to CTestStefan Dinkelacker2020-01-311-0/+8
| | | | | | | | | If no tests were found, the default behavior of CTest is to always log an error message but to return an error code in script mode only. This option unifies the behavior of CTest by either returning an error code if no tests were found or by ignoring it. Signed-off-by: Stefan Dinkelacker <s.dinkelacker@dkfz-heidelberg.de>
* CTest: Rename internal APIs for --repeat optionsBrad King2019-11-071-3/+3
| | | | Replace use of the term "rerun" with "repeat" to match the public names.
* ctest: Add --repeat-after-timeout optionBrad King2019-10-291-0/+1
| | | | | Add an option to re-run tests if they timeout. This will help tolerate sporadic timeouts on busy machines.
* ctest: Add --repeat-until-pass optionBrad King2019-10-291-2/+7
| | | | | | | | | Add an option to re-run tests if they fail. This will help tolerate sporadic failures. Issue: #17010 Co-Author: Ben Boeckel <ben.boeckel@kitware.com> Co-Author: Chuck Atkins <chuck.atkins@kitware.com>
* Revise include order using clang-format-6.0Kitware Robot2019-10-011-3/+3
| | | | | Run the `clang-format.bash` script to update our C and C++ code to a new include order `.clang-format`. Use `clang-format` version 6.0.
* clang-tidy: modernize-deprecated-headersRegina Pfeifer2019-09-161-1/+1
|
* clang-tidy: Replace typedef with usingRegina Pfeifer2019-09-031-1/+1
|
* ctest: rename TRACK to GROUPZack Galbreath2019-08-221-3/+3
| | | | | | | | | | Update command-line options, script variables, and documentation to use the term "group" instead of "track". The old terms are still available for now, but they are now undocumented. This makes our terminology more consistent with CDash. The goal of this change is to make it more clear to our users how CTest and CDash interact with each other.
* IWYU: Fix handling of <memory> standard headerBrad King2019-07-101-1/+1
| | | | | | | | An old workaround for `std::allocator_traits<>::value_type` lints from IWYU on `std::vector<>` usage breaks IWYU's handling of `<memory>`. Convert the workaround to use the same approach we already use for a workaround of `std::__decay_and_strip<>::::__type` lints. Then update the `<memory>` inclusions to follow the now-correct IWYU lints.
* cmCTest: Remove dead codeRegina Pfeifer2019-03-201-19/+0
|
* cmCTest: Cleanup typedefsRegina Pfeifer2019-03-201-7/+4
|
* cmCTest: Use default member initializationRegina Pfeifer2019-03-201-2/+0
|
* cmCTest: Use concrete accessor functions for TestingHandlersRegina Pfeifer2019-03-201-9/+20
|
* cmCTest: Move all data members to private implementation structRegina Pfeifer2019-03-181-109/+3
|
* cmCTest: Remove friend declarationsRegina Pfeifer2019-03-181-3/+2
|
* cmCTest: De-inline all member functionsRegina Pfeifer2019-03-181-49/+31
|
* cmSystemTools: More functions accept `std::string` paramsVitaly Stakhovsky2019-02-201-2/+3
|
* Delete some default constructors and assignment operatorsAlbert Astals Cid2019-02-151-0/+3
| | | | | | They are unused, but if someone used them they would lead to problems since they would copy the internal raw pointers and the destructor would cause double delete
* cleanup: Prefer compiler provided special member functionsRegina Pfeifer2019-01-251-2/+0
|
* clang-tidy: Use `= default`Regina Pfeifer2019-01-251-1/+1
| | | | | | Suppress some cases in `Source/cmGeneratorExpressionNode.cxx` and `Source/cmUVHandlePtr.h` where a few older compilers require a user-defined default constructor (with `{}`).
* CTest: Add function GetSubmitURLRegina Pfeifer2019-01-161-0/+2
|
* CTest: Add --show-only[=format] option to print test infoJustin Goshi2019-01-101-0/+6
| | | | | | format can be 'human' to print the current text format or 'json-v1' to print the test object model in json format and is useful for IDEs who want to gather information about the tests. Defaults to 'human' format.
* clang-tidy: Use default member initializationRegina Pfeifer2018-12-151-5/+2
|
* CTest: Remove special case for Dart version <= 1Regina Pfeifer2018-11-281-7/+0
|
* Mark operator bool explicitRegina Pfeifer2018-11-191-1/+1
|
* CTest: Add colored output on tests summary where supportedSylvain Joubert2018-11-091-1/+23
| | | | | | | | - Number of passed/failed tests is colored according to the whole outcome - Individual listed tested are colored according to their completion status: * Disabled: blue * Failed: red * Not Run: yellow
* ctest_submit: Add support for a "Done" partBetsy McPhail2018-10-101-0/+10
| | | | | | | | | | | Teach CTest to submit Done.xml. Submission of this file indicates to CDash that a build is complete and no more files will be uploaded. It contains the build id returned by CDash and the current time. This file is submitted last for a given build when using the `ctest_submit()` command. If submitting by PARTS, use `ctest_submit(PARTS Done)`.
* ctest: Add option for live progress summary in terminalMichael Wegner2018-09-261-0/+9
|
* Update use of KWSys SystemTools::SplitString for new signatureBrad King2018-06-221-2/+2
|
* Fix misc. typosluz.paz2018-06-041-2/+2
| | | | Found via `codespell` and `grep`
* ctest_start: read model from TAG fileKyle Edwards2018-05-091-3/+4
| | | | | | | | This change reworks ctest_start() so that simply calling ctest_start(APPEND) will read all the information from the TAG file. On top of that, it relaxes the argument parsing for ctest_start() to allow greater flexibility in the argument ordering, and the documentation for ctest_start() has been cleaned up.
* Fix misc typos in documentation and commentsluz.paz2018-03-071-1/+1
|
* Merge topic 'ctest_start_function_scope'Brad King2018-01-291-0/+2
|\ | | | | | | | | | | | | | | 13347740 Help: add release notes, documentation for CTEST_RUN_CURRENT_SCRIPT behavior 74092d92 cmCTestScriptHandler: Add new field ShouldRunCurrentScript Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1703
| * cmCTestScriptHandler: Add new field ShouldRunCurrentScriptKyle Edwards2018-01-261-0/+2
| | | | | | | | | | | | | | | | | | | | This is to avoid scope issues with CTEST_RUN_CURRENT_SCRIPT. If ctest_start() is called within a function scope, the value of CTEST_RUN_CURRENT_SCRIPT that it sets doesn't make it to the global scope. With this change, ctest_start() no longer sets CTEST_RUN_CURRENT_SCRIPT, and instead sets a field directly in cmCTestScriptHandler. The old behavior of CTEST_RUN_CURRENT_SCRIPT has also been kept for projects and tests that rely on setting it.
* | CTest: introduce cmDurationWouter Klouwen2018-01-231-15/+11
|/ | | | | | | | This commit introduces cmDuration as a typedef for std::chrono::duration<double, std::ratio<1>>. It is less verbose and provides for a point to put future common functionality for durations. No functional change intended.
* cmCTest: Refactor stop time calculationsBrad King2018-01-081-5/+5
| | | | | Calculate the stop time up front instead of re-parsing its string for every test.
* cmCTest: Remove unused member LastStopTimeoutBrad King2018-01-081-2/+0
| | | | | | | This member was added by commit v2.8.2~285 (Better detection of stop_time being passed, 2010-03-19), but its logic has no effect. The member is only used for comparison against a value to which it was just assigned.
* Merge topic 'fix-ctest-chrono'Brad King2017-12-121-0/+2
|\ | | | | | | | | | | | | | | | | | | | | | | ba6caafa CTest: Use integer-representable value for "infinite" timeout 548e8f6f CTest: Simplify std::chrono::duration<double> conversion to double de0035fd cmCTestBuildAndTestHandler: Convert timeout to std::chrono::duration 687a26b7 CTest: Fix regression in build-and-test timeout forwarding e770b1b8 CTest: Fix regression in build-and-test timeout compuatation Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: dublet <github@dublet.org> Merge-request: !1574
| * CTest: Use integer-representable value for "infinite" timeoutBrad King2017-12-111-0/+2
| | | | | | | | | | | | | | | | Refactoring in commit 66419bc046 (CTest: convert timeouts to std::chrono::duration, 2017-11-20) changed out "infinite" timeout to a value not representable by a 64-bit integer. This causes undefined behavior when e.g. KWSys Process converts the duration to a `long` to interact with system APIs. Use the old `1.0e7` maximum value.
* | CTest: Remove unfinished batch test modeBrad King2017-12-081-4/+0
|/ | | | | This was partially implemented by commit v2.8.0~154 (Added some ctest batch capabilities, 2009-09-10) but never finished.