summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestTestHandler.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Source: Remove redundant FileIsDirectory checksscivision2023-09-191-4/+2
|
* CTest: Add ability to dynamically generate resource spec fileKyle Edwards2023-08-101-17/+7
| | | | Issue: #25106
* IWYU: Update for Debian 12 CI jobBrad King2023-07-281-0/+1
| | | | | | `include-what-you-use` diagnostics, in practice, are specific to the environment's compiler and standard library. Update includes to satisfy IWYU for our CI job under Debian 12.
* ctest: export test labels to junit xmlAlex Neundorf2023-07-261-0/+15
| | | | | | | | | | | | With this patch, the junit files written by ctest also contain the test labels as testcase properties, see https://github.com/testmoapp/junitxml#properties The name for the property is "cmake_labels", where "cmake_" is used namespace-like. This could be done the same way if we export more properties to junit. Also this makes it clear to consumers that this is coming from cmake, and the list is a cmake-formatted string.
* ctest: Optionally terminate tests with a custom signal on timeoutBrad King2023-06-021-0/+61
| | | | | | | | CTest normally terminates test processes on timeout using `SIGKILL`. Offer tests a chance to exit gracefully, on platforms supporting POSIX signals, by setting `TIMEOUT_SIGNAL_{NAME,GRACE_PERIOD}` properties. Fixes: #17288
* cmCTestRunTest: Consolidate test timeout selection logicBrad King2023-05-041-6/+0
| | | | | Test timeout selection was previously spread out over several locations. Consolidate it in a single place to make it easier to follow.
* ctest: Fix TIMEOUT test property with value 0 with --timeout flagBrad King2023-05-041-1/+1
| | | | | An explicit zero TIMEOUT test property value should not be overridden by the `--timeout` flag.
* cmCTestTestHandler: Use in-class initialization of properties and resultsBrad King2023-05-041-11/+0
|
* CMake code rely on cmList class for CMake lists management (part. 2)Marc Chevrier2023-04-291-3/+2
|
* CMake code rely on cmList class for CMake lists management (part. 1)Marc Chevrier2023-04-241-11/+12
|
* presets: Improve JSON parser and error messagesMartin Duffy2023-03-291-3/+3
|
* CTest: add test failure reason to JUnit XML outputFrank Winklmeier2023-02-021-1/+1
| | | | | | | | In case of test failure, add the test failure reason (e.g. "Timeout") to the failure message in the XML file. This is the same value that is shown in the ctest text output. Fixes: #24184
* cmValue: Use operator* explicitly to convert to std::string; avoid extra callVitaly Stakhovsky2023-01-161-9/+10
|
* ctest: print error for invalid CTEST_CUSTOM_TEST_OUTPUT_TRUNCATIONFrank Winklmeier2022-09-071-1/+5
| | | | | | | | | Print an error message for invalid values of `CTEST_CUSTOM_TEST_OUTPUT_TRUNCATION` in a ctest dashboard script. The option was added by commit 140704d443 (ctest: add option for output truncation, 2022-03-07, v3.24.0-rc1~513^2). Fixes: #23869
* cmSystemTools: Fix 'ErrorOccurred' spellingFeRD (Frank Dana)2022-06-131-1/+1
| | | | | | | | Rename the booleans 's_ErrorOccured' and 's_FatalErrorOccured' to 's_ErrorOccurred' and 's_FatalErrorOccurred', respectively. Rename the getters and setters to 'Get[Fatal]ErrorOccurred' and 'Set[Fatal]ErrorOccurred', and fix all uses across the codebase.
* clang-tidy: address `google-readability-casting` lintsBen Boeckel2022-05-241-1/+2
| | | | At least those involving `static_cast`.
* Source: Fix clang -Wunused-but-set-variable warningsBrad King2022-04-061-5/+2
|
* ctest: add option for output truncationFrank Winklmeier2022-03-081-13/+44
| | | | | | | | | | Add `--test-output-truncation` to `ctest`. This option can be used to customize which part of the test output is being truncated. Currently supported values are `tail`, `middle` and `head`. Also add equivalent `CTEST_CUSTOM_TEST_OUTPUT_TRUNCATION` variable. Fixes: #23206
* cmCTestTestHandler: refactor CleanTestOutput methodFrank Winklmeier2022-03-081-16/+23
| | | | | Refactor the code to skip over UTF-8 multi-bytes into its own lambda function so it can more easily be re-used.
* Merge topic 'ctest-add_subdirectory'Brad King2021-12-091-55/+38
|\ | | | | | | | | | | | | | | | | 7c5a120c38 Tests: Add case covering both ctest subdirectory commands 04deda1d2a CTest: Extract common implementation of add_subdirectory and subdirs Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6795
| * CTest: Extract common implementation of add_subdirectory and subdirsfriendlyanon2021-12-081-55/+38
| | | | | | | | | | | | | | | | | | | | The two functions have basically the same functionality in a CTest context, however the add_subdirectory implementation was missing code for changing the current working directory similarly to how it was done for subdirs. This commit extracts the common code and also fixes that bug. Issue: #22921
* | cmListFileBacktrace: Remove unused "bottom" entryBrad King2021-12-081-1/+1
|/ | | | | All uses of `GetBottom` by clients have been removed, so drop the method and its supporting infrastructure.
* Source: Replace most calls to sprintf with snprintfSean McBride2021-10-251-2/+2
|
* Source: Fix Clang -Wdeprecated warningsSean McBride2021-10-151-0/+2
| | | | Applied C++ 'rule of three'.
* Rename cmProp in cmValueMarc Chevrier2021-09-211-5/+5
|
* cmCTestGenericHandler::GetOption returns cmPropMarc Chevrier2021-09-131-12/+12
|
* ctest_memcheck: generate `DynamicAnalysis-Test.xml` as wellBen Boeckel2021-09-091-0/+15
| | | | | | | This is useful so that memcheck results also show up as test results on CDash. It will be submitted with the other `MemCheck` parts. Fixes: #22190
* Merge topic 'ctest-environment-modifications'Brad King2021-07-131-0/+2
|\ | | | | | | | | | | | | | | de4f1f26b0 CTest: add an ENVIRONMENT_MODIFICATION property 4c757fa3c8 Help/prop_test/ENVIRONMENT: clarify the scope of the changes Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6299
| * CTest: add an ENVIRONMENT_MODIFICATION propertyBen Boeckel2021-07-091-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This property allows projects to modify environment variables at test time rather than trying to guess what the state should be based on what is present at configure time. Of particular interest is the ability to use a `PATH` present at test time while adding entries known to be necessary for the test itself. There are multiple operations provided to modify variables, including: - setting and unsetting - appending and prepending as: - strings - path lists - CMake lists Additionally, a `reset` action is provided to cancel any prior modifications to that particular variable in the case of incremental additions to the test property.
* | cmState: Construct with modeBrad King2021-07-121-1/+1
|/
* ctest: support <CTestMeasurement> for runtime measurementsZack Galbreath2021-07-011-138/+54
| | | | | | | | | | | | | | | | | | | Teach CTest to parse output for <CTestMeasurement> in addition to <DartMeasurement> for measurements defined at runtime. Use a new class (cmCTestTestMeasurementXMLParser) derived from cmXMLParser to parse the data and attributes these XML elements. This is an improvement over our previous approach of using a series of regular expressions. As part of this commit we also rename some member variables and methods to make their purpose more clear. DartStuff -> AllTestMeasurementsRegex DartStuff1 -> SingleTestMeasurementRegex DartString -> TestMeasurementsOutput GenerateDartOutput() -> GenerateCTestXML() GenerateRegressionImages() -> RecordCustomTestMeasurements() cmCTestRunTest::DartProcessing() -> ParseOutputForMeasurements()
* ctest: allow test output to add labelsZack Galbreath2021-06-171-0/+2
| | | | | Parse test output for <CTestLabel>...</CTestLabel>. If found, add this value to the list of labels associated with this test.
* ctest: allow test output to override the 'details' fieldZack Galbreath2021-06-091-1/+9
| | | | | | Parse test output for <CTestDetails>...</CTestDetails>. If found, use this value to override the default 'Details' string reported to CDash.
* ctest: add support for attaching files to tests at run timeZack Galbreath2021-06-081-39/+67
| | | | | | | | | | | | | | 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: Add support for writing test results in JUnit XML formatZack Galbreath2021-04-261-0/+130
| | | | Addresses #18654
* Update CMake code using KWSys to account for Status return valuesBrad King2021-04-141-1/+1
| | | | | | KWSys as of 2021-04-14 changed the return type of `SystemTools` operations from `bool` to `Status`. Update our call sites. This may improve error reporting accuracy in a few places.
* ctest: Support multiple -L and -LE options to mean "AND"Adriaan de Groot2021-03-281-44/+59
| | | | Fixes: #21087
* Source: Reduce c_str() usagevvs314152021-03-131-6/+4
|
* clang-tidy: fix `performance-no-automatic-move` warningsBen Boeckel2021-01-271-1/+1
|
* Code style: add missed explicit 'this->'Oleksandr Koval2021-01-051-3/+3
| | | | | CMake uses explicit 'this->' style. Using custom clang-tidy check we can detect and fix places where 'this->' was missed.
* include: refactor call sites of cmMakefile::ReadDependentFileAsit Dhal2020-10-211-1/+1
| | | | Fixes: #16773
* cmMakefile::GetDefinition: return cmPropVitaly Stakhovsky2020-09-021-2/+3
|
* CTest: exit nonzero after message(SEND_ERROR|FATAL_ERROR)Kevin Puetz2020-08-261-8/+16
| | | | Fixes: #21004
* cmCTest: Members accept std::string parametersVitaly Stakhovsky2020-07-271-6/+6
|
* CTest: Log environment variables as a test measurementKyle Edwards2020-05-191-0/+6
|
* Merge topic 'stl-support'Brad King2020-05-011-1/+1
|\ | | | | | | | | | | | | 8d4a9ee398 Refactoring: rename "cm_static_string_view.hxx" as <cmext/string_view> Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4689
| * Refactoring: rename "cm_static_string_view.hxx" as <cmext/string_view>Marc Chevrier2020-04-301-1/+1
| |
* | IWYU: mark <cstddef> as neededBen Boeckel2020-04-291-1/+1
|/ | | | Newer IWYU is not seeing them as needed for `size_t`.
* ctest: add option --stop-on-failureJohnny Jazeix2020-04-201-0/+4
| | | | | | To stop the tests once one has failed Fixes: #16628
* Refactoring: add cm::contains to <cmext/algorithm>Marc Chevrier2020-04-171-8/+9
|