Commit Graph

392 Commits

Author SHA1 Message Date
Zach Mullen 41fcf6e155 Moved call to cache CDash version information to cmCTest::initialize. Also added a 3 second timeout when requesting the version from the server. Added an option to the CTestConfiguration that will be used to determine whether to query the version information at all. (Behavior for this setting is not yet defined.) Updated CMake's local CDash version setting to 1.6. 2010-02-08 09:47:39 -05:00
Bill Hoffman 46ff4bbd0a Fix HPUX issue with test, by doing the query to cdash for its version before any test is started. 2010-02-04 19:00:20 -05:00
Bill Hoffman 42d175f26c Fix a line length issue. 2010-01-05 08:53:37 -05:00
Zach Mullen 0a0788a72d Enhanced CTest HTTP Request API to support PUT file uploads. 2009-12-30 11:10:42 -05:00
David Cole 47bd8637ab Fix crash on Continuous dashboard - related to last commit fixing issue #10060. Do not call ShouldCreateNewTag if command is NULL... 2009-12-29 15:48:14 -05:00
David Cole aad15c3abf Fix issue #10060 - add APPEND arg to ctest_start command.
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.
2009-12-29 14:38:31 -05:00
Zach Mullen 3cb2a0ffa6 Move cURL dependent code out of CMakeLib to fix complex tests. 2009-12-22 14:37:06 -05:00
Zach Mullen 5aad7bf2d4 Make new web api safe for bootstrap build. 2009-12-21 16:42:32 -05:00
Zach Mullen a302b51db5 Query the CDash web API to automate CDash version detection. 2009-12-21 15:47:29 -05:00
Zach Mullen 7af553188e Added support for CTest awareness of the CDash version. This will help 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. 2009-12-21 12:27:04 -05:00
Zach Mullen 9add940eb6 Added an option to conditionally attach files to a test submission only if the test does not pass. Also some preliminary changes for test output compression. 2009-12-16 14:50:16 -05:00
Zach Mullen b2e7da885d Added a "-http1.0" option to ctest to make it submit using curl's http 1.0 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. 2009-12-11 14:10:37 -05:00
Zach Mullen a52c0118d4 Added the --timeout option to ctest command line. This sets a global timeout on all tests if no more specific timeout is set on them. 2009-11-30 16:08:11 -05:00
Brad King e1548142fb CTest: Move initial checkout to ctest_start()
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.
2009-11-24 08:58:59 -05:00
Brad King c2ba35787e CTest: Simplify Initialize method signature
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.
2009-11-24 08:58:48 -05:00
Zach Mullen 8612aa10b6 Hook for scheduling tests in a random order
This may help statistically detect implicit dependencies among unit
tests while running in parallel.
2009-10-29 15:30:12 -04:00
David Cole 886ae02356 Fix crash on Windows. Remove trailing white space from regex. These changes should correct all failures of the new FailedSubmit tests. 2009-10-15 07:38:51 -04:00
David Cole 85feea2d0d Fix floating point comparison warnings. Thanks to Alex Neundorf for the patch. 2009-10-13 16:39:48 -04:00
Zach Mullen 7199badb00 Fix line length. 2009-10-13 08:56:38 -04:00
Zach Mullen bf0e67fea3 Uncomment block in InitializeFromCommand (accidentally checked this change in) 2009-10-12 11:11:43 -04:00
Zach Mullen a5aa23d4e1 CTest-side support for compiler name and compiler version information. Requires CDash update to show on CDash. 2009-10-12 11:06:49 -04:00
Brad King 96afb12087 Convert CMake to OSI-approved BSD License
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.
2009-09-28 11:43:28 -04:00
Zach Mullen 2e5ccdbc18 Removed comment 2009-09-24 11:09:10 -04:00
Zach Mullen 65c418e56f Reformat ctest -N output. Removed the "Start processing tests" message as well. 2009-09-24 09:49:46 -04:00
Bill Hoffman 8a690289c2 Add label summary times to ctest default output. Also, remove parallel time output. Add flag to disable label summary. 2009-09-11 13:34:35 -04:00
Zach Mullen 69fd641adb Fixed ctest output where max test index is not the same width as the total number of tests. Also some preliminary changes for batching ctest jobs 2009-09-02 10:08:40 -04:00
Zach Mullen 177edc5ed1 Fixed ctest -N segfault issue. Further refactored ctest. Enabled failover for ctest 2009-08-27 10:37:30 -04:00
Zach Mullen 8ffd8d0a03 ENH: refactored ctest. All testing is now parallel. If no -j option is specified, defaults to a MP level of 1 (non parallel) 2009-08-26 12:09:06 -04:00
Zach Mullen a2ef34d344 Fixed overwriting of a previous change set 2009-08-19 09:24:55 -04:00
Zach Mullen b9daa192af ENH: Refactored CTest test execution code into an object 2009-08-19 08:58:36 -04:00
Brad King e9d7ebb3ec BUG: Do not double-initialize local generators
All global generator CreateLocalGenerator methods automatically
initialize the local generator instances with SetGlobalGenerator.  In
several places we were calling SetGlobalGenerator again after receiving
the return value from CreateLocalGenerator.  The double-initializations
leaked the resources allocated by the first call to SetGlobalGenerator.
This fix removes the unnecessary calls.
2009-07-28 10:47:02 -04:00
David Cole c64b1456b6 BUG: Fix typo pointed out by Monsieur Francois Bertel. Merci, Francois. 2009-07-22 12:06:52 -04:00
Bill Hoffman 5c4208f50e ENH: only 5 failing tests for VS 10 2009-07-10 09:12:39 -04:00
Brad King a045bd4c0d COMP: Avoid operator precedence warning
GCC warns that parens should be used for nested and/or operators.
2009-05-11 13:58:19 -04:00
Bill Hoffman 00c253847a BUG: 8898 fix date in ctest nightly time 2009-05-07 18:20:42 -04:00
Brad King 98c51ff6dc ENH: Overhaul CMake version numbering
This moves the version numbers into an isolated configured header so
that not all of CMake needs to rebuild when the version changes.

Previously we had spaces, dashes and/or the word 'patch' randomly chosen
before the patch number.  Now we always report version numbers in the
traditional format "<major>.<minor>.<patch>[-rc<rc>]".

We still use odd minor numbers for development versions.  Now we also
use the CCYYMMDD date as the patch number of development versions, thus
allowing tests for exact CMake versions.
2009-03-05 15:17:07 -05:00
Brad King 3f4064f7ac ENH: Add cmCTest::DecodeURL method
This new method decodes the "percent-encoding" used in URL syntax.
2009-02-24 15:43:06 -05:00
Bill Hoffman efad72a9a3 ENH: add label global property to ctest scripts 2009-02-10 16:08:40 -05:00
Bill Hoffman 4e710a9ebe ENH: add the ability to run tests by labels 2009-02-10 14:24:24 -05:00
Brad King dc13914cd6 ENH: Create cmXMLSafe to help escapes in XML
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.
2009-02-05 16:31:37 -05:00
Brad King 5527ca5524 BUG: Reset file submission list on test restart
When running in script mode it is possible to run multiple separate
dashboard submissions in one cmCTest instance.  The recent refactoring
of file submission lists into parts failed to clear the submission lists
when starting a new dashboard (ctest_start or ctest_update).  Only the
unused old submission set was cleared.  This fixes the refactored
version to remove the old submission set completely and also clear the
part-wise lists.
2009-01-27 10:58:33 -05:00
Bill Hoffman 7e1ba9d075 BUG: add output on failure to ctest #8255 2009-01-18 13:03:32 -05:00
Brad King 6783ca8364 COMP: Remove unused variable 2009-01-12 11:10:04 -05:00
Brad King 447f5b303e ENH: Divide CTest file submission list by part
This splits the list of files for CTest to submit into those belonging
to each part.  The set is recombined just before submission.  Later this
will allow piecewise submissions.
2009-01-12 10:37:55 -05:00
Brad King 4b97fab34d ENH: Refactor cmCTest test part representation
This introduces the name "part" to denote a portion of the testing and
submission process performed by ctest.  We generalize the boolean
indicating whether each part is enabled into a structure to which more
information can be added later.  We provide bi-directional mapping
between part id and part names.
2009-01-12 10:37:25 -05:00
Brad King cccac773ce ENH: Teach ctest_* to create appending XML files
This adds an APPEND option to the ctest_* commands which tells them to
put the Append="true" attribute in the Site element of their XML file.
2009-01-12 09:11:29 -05:00
Brad King 82e7e7fb7d ENH: Add missing newline to CTest-generated xml
The Generator="ctest..." attribute of Site elements in CTest-generated
XML files was missing a newline, causing the next attribute to appear on
the same line.  This adds the newline.
2009-01-09 16:44:19 -05:00
Bill Hoffman 5690cafd62 ENH: fix crash for old style scripts 2009-01-09 12:56:09 -05:00
Bill Hoffman ed387ffe6b ENH: add subproject tag property for ctest 2009-01-09 12:05:23 -05:00
Brad King 2703d51b8f BUG: Capture cout and cerr from internal ctest
When CTest detects that a test is running its own executable it
optimizes the test by using an internal instance of cmCTest instead of
creating a new process.  However, the internal instance was using cout
and cerr directly.  This redirects the output to a string stream to
avoid direct display of the internal test's output.
2009-01-05 14:14:10 -05:00