| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| | |
b35a7730 Fix truncation of valgrind output logic.
|
| |
| |
| |
| |
| |
| | |
This showed up because scan-build noticed outputFull was basically
a constant. Logic should be output all valgrind output. Then output
regular test output until output limit is reached.
|
|/
|
|
|
| |
This avoids having to check the pointer value at each use which
was not being done.
|
|
|
|
|
|
| |
No call sites pass NULL to the output argument, so take it by
reference to avoid the if(output) conditions. Propagate the
change through the TryCompile APIs that call it.
|
|
|
|
|
|
|
|
|
|
| |
Add a new additional entry to the FilePaths array when a
"package" tag has been found. This path should consist of the package
information found appended to the projects source directory.
This change will allow code held in a /src/main/java/* directory off of the
projects source directory to be found, unlike now which assumes a subdirectory
contains the code.
|
|
|
|
|
|
| |
Since the Sanitizers write out one log file per process, a single
test might have more than one log file. This commit allows ctest
to read all of the log files found for a particual test.
|
|\
| |
| |
| |
| | |
09b2ac38 Encoding: Fix a few encoding problems with ctest.
|
| |
| |
| |
| |
| | |
This also fixes some test failures on Windows when the
name of the build directory contains non-ascii characters.
|
| |
| |
| |
| |
| |
| | |
Before this commit, you would have to run ctest -S mode to get
MemoryCheckType to work. This is because CMAKE_COMMAND was not set.
The fix is to use cmSystemTools::GetCMakeCommand instead.
|
|/
|
|
|
|
| |
This adds support for memory and leak sanitizers. This is built into
clang and gcc 4.8 and new compilers. It is activated with a -f switch
during compile.
|
|
|
|
|
|
|
|
|
| |
This commit adds support for ThreadSanitizer to ctest. ThreadSanitizer
is part of the clang compiler and also gcc 4.8 and later. You have to
compile the code with special flags. Then your code gets the the
ThreadSanitizer ability built into it. To pass options to the
ThreadSanitizer you use an environment variable. This commit teaches
ctest to parse the output from ThreadSanitizer and send it to CDash.
|
|
|
|
|
|
| |
Send status messages to the CTest HANDLER_OUTPUT log since they are part
of the script handler output. This also ensures they appear inline with
other test command handler output.
|
|\
| |
| |
| |
| | |
f7303131 CTest: Teach the launchers to honer the max warnings and errors
|
| |
| |
| |
| |
| |
| | |
The ctest launcher code did not respect the number of errors and
warnings limits. Limit the number of launcher report fragments that we
report in the final submission.
|
|/
|
|
|
| |
This class had a method that started with lower case, and also
was called without this->.
|
|\
| |
| |
| |
| | |
58cc3c22 Fix ctest to allow valgrind to show up in the path name of a memcheck tool.
|
| |
| |
| |
| |
| |
| |
| | |
For testing purposes CMake creates dummy memory checkers. The dummy checkers
are in the CMake build tree. Before this change when the path contained the
string valgrind, such as CMake-valgrind, all the checkers were thought to
be valgrind, and this caused tests to fail.
|
|\ \
| |/
|/|
| |
| | |
558c2190 CTest: Add Jacoco Coverage functionality
|
| |
| |
| |
| |
| |
| |
| |
| | |
Add the ability to parse the XML output of the Jacoco tool.
Jacoco (www.eclemma.org/jacoco) is a Java coverage tool.
Add and integrate a class for the parser and
include a test which utilizes the new parser.
|
|/ |
|
|
|
|
|
|
|
|
|
| |
Add support for Cobertura coverage files written by Java.
Add a test which uses the report from a Java run of Cobertura to calculate coverage.
In the documentation of CTEST_COVERAGE_COMMAND, give a sample .sh file to merge
the Cobertura .ser files and generate the XML report from the merged file.
|
|
|
|
|
|
| |
The coverage.py tool writes out an XML that conforms to the Cobertura
Coverage tool standard. Rename the cmParsePythonCoverage files to
instead be cmParseCoberturaCoverage.
|
|
|
|
|
| |
The cobertura format uses line numbers indexed starting at 1, and CTest
uses a vector indexed starting at 0 to store them.
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the coverage.py source file is not found in the source directory, the
build directory is first searched before raising an error.
This is necessary because it is a valid workflow to build a Python
package from source, then install this package to a virtualenv that
lives in the build directory. Tests will run against this deployed
package and therefore the covered source files will be found in a
subdirectory of the build directory, and not anywhere in the source
directory.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
209cd475 Help: Add notes for topic 'cmake-gui-capture-output'
d7c69246 execute_process: Send stderr through cmSystemTools::Stderr
92ddf0c9 cmake-gui: Capture cmSystemTools::Stdout and Stderr
f52b5ae3 cmSystemTools: Add callback for Stderr
a9ae1d7a cmSystemTools: Simplify InterruptCallback definition
73b13f56 cmSystemTools: Rename ErrorCallback to MessageCallback
7577a542 cmCTestBuildAndTestHandler: Refactor output capture
b1b4d761 cmCTestBuildAndTestHandler: Refactor local loop var
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Factor a common callback type out of StdoutCallback. Add an equivalent
StderrCallback. While at it, use "size_t" for the data length instead
of "int".
Teach "ctest --build-and-test" to capture the Stderr callback because
output sent through it is part of the logical CMake process output.
|
| |
| |
| |
| |
| | |
Clarify that it is the callback for the cmSystemTools::Message API.
Rename callback clients too.
|
| |
| |
| |
| | |
Use an RAII class to add and remove callbacks.
|
| | |
|
|\ \
| |/
|/|
| |
| | |
9ad07fbe CTest: Fix MUMPS coverage parsing and test
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix the MUMPS coverage parser:
* Account for tabs after entry points
* Stop double incrementing lines that have explicit calls to the 0 line
* If a line has been previously marked as non executable, but then
contains a count, increment it an extra one to push it back into
the executable code set.
Add a custom routine and corresponding coverage files in the test case.
This file is smaller and has cmcov/mcov files that have data for only
that routine.
|
|\ \
| |/
|/|
| |
| | |
54111286 ctest_build: Do not crash on bad generator name
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If creation of the global generator fails, return early with an error
message instead of trying to use the generator and crashing.
Add a CTestTestBadGenerator test to cover this case.
Reported-by: Mathieu Malaterre <malat@debian.org>
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=747306
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
By default, Intel compiler coverage tools generate HTML files as
reports, but the option -txtlcov can be given to codecov to output a
coverage file with LCov format.
To use Intel coverage:
* build the project with coverage flags
* run the application
* run profmerge
* run codecov
The output file will be "build_dir/CodeCoverage/SRCFILEDIR.LCOV".
Ask users to compile with -prof-dir${BUILD_DIR} instead of searching
the entire build tree recursively to find coverage files.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
3be265b3 Workaround Sun C++ 5.9 compiler crash
af8a1643 Remove c_str calls when using stream APIs.
21c573f6 Remove some c_str() calls.
|
| | |
| | |
| | |
| | |
| | | |
Use an ad-hoc clang tool for matching the calls which should be
ported.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Use the clang RemoveCStrCalls tool to automatically migrate the
code. This was only run on linux, so does not have any positive or
negative effect on other platforms.
|
|/ /
| |
| |
| |
| | |
Use it to set the CoverageExtraFlags value just as COVERAGE_EXTRA_FLAGS
does in the CTest module for creating DartConfiguration.tcl.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
| |
| |
| |
| | |
Variable names are always generated by CMake and should never be NULL.
|
|/
|
|
|
| |
Emit an error message when we're performing coverage using
gcov and the gcov executable cannot be found.
|
|
|
|
|
|
|
|
| |
My last related commit e5e3f3d4 (CTest: filter /showIncludes output from
ninja compile launcher, 2013-12-01) filtered /showIncludes messages from
the generated xml output but they also need to be filtered in
ScrapeLog(). Otherwise they are being detected as warnings when using
compilers withs english diagnostics.
|
|
|
|
|
|
|
|
| |
They need to be escaped in the json file... I'm quite
sure I tested this before, obviously I didn't test it
correctly.
Alex
|
|
|
|
|
|
| |
Mark unknown revisions as such and fail instead of reporting revision 0.
Otherwise CTest reports massive file updates between revisions when the
server timeouts while trying to fetch the current revision number.
|
| |
|
|
|
|
|
| |
Also use SystemTools::Fopen() instead of fopen().
This is to eventually support utf-8 filenames.
|