summaryrefslogtreecommitdiff
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
...
* Avoid PathScale cmd-line bug in TryCompile testBrad King2010-01-251-2/+8
| | | | | | | | | | | | | | | | | | | | The PathScale compiler silently accepts unknown options that start in more than one '-': $ touch foo.c $ pathcc -c foo.c --junk $ echo $? 0 $ pathcc -c foo.c ---junk $ echo $? 0 $ pathcc -c foo.c -junk pathcc ERROR parsing -junk: unknown flag $ echo $? 2 We teach the TryCompile to pass a bogus flag with only one '-' instead of three '-'s for this compiler.
* Skip Fortran module mangling test on PathScaleBrad King2010-01-251-1/+1
| | | | | | We disable this test because PathScale Fortran mangles module symbols as "MYSUB.in.MYMODULE" so we cannot interface with it from C. We already did this for SunPro and MIPSpro.
* Fix escapes in Fortran depend.make entriesBrad King2010-01-042-4/+11
| | | | | | | Makefile dependencies must be escaped using cmLocalGenerator::Convert with the cmLocalGenerator::MAKEFILE option. This fixes Fortran module dependencies with spaces in the path. We test the fix by adding a space to one of the module paths in the Fortran test.
* Fix issue #10060 - add APPEND arg to ctest_start command.David Cole2009-12-291-0/+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.
* Longer CTestTestTimeout default time on CygwinBrad King2009-12-211-1/+5
| | | | | | | | | The commit "Make CTestTestTimeout time configurable" added a CMake cache variable CTestTestTimeout_TIME to configure the length of the timeout used by the inner CTestTestTimeout test. The reason was to allow users on slow machines to give this test some extra time without extending the timeout for everyone. However, Cygwin CMake seems to load slowly enough that it is worth a longer default timeout for that platform.
* Test for SVNPath element in Update.xmlBrad King2009-12-182-3/+4
| | | | | | | The commit "Submit Subversion directory path in Update.xml" added the element <SVNPath>...</SVNPath> to Update.xml for Subversion work trees. This commit teaches the CTest.UpdateSVN test to verify the presence of the element.
* Fix BadExe test on cygwin.Bill Hoffman2009-12-181-6/+8
|
* Submit global tree revision in Update.xmlBrad King2009-12-182-0/+20
| | | | | | | We teach CTest to report in a <Revision> element the revision of the source tree that was tested. This makes sense for all modern VCS tools because they version the whole tree. We simply omit this element for CVS because it only versions files. See issue #7541.
* Test the CheckTypeSize moduleBrad King2009-12-174-0/+181
| | | | | We create test "Module.CheckTypeSize" to verify that type sizes get detected correctly.
* Teach ADD_TEST_MACRO about test namespacesBrad King2009-12-171-4/+6
| | | | | | We teach ADD_TEST_MACRO to transform names of the form "Namespace.Name" to the directory "Namespace/Name" and the project name "Name". This will allow new tests to be better organized.
* Workaround for CTestTestBadExe on CygwinZach Mullen2009-12-171-2/+6
|
* Add a test to build the CSE project if the optional cache entry ↵David Cole2009-12-151-0/+13
| | | | CMAKE_TEST_PROJECT_CSE_DIR is set.
* Honor real language flags in FortranC.Flags testBrad King2009-12-153-6/+10
| | | | | | The test overrides the CMAKE_C_FLAGS and CMAKE_Fortran_FLAGS to test passing a specific flag to the compiler wrapper scripts. We fix it to honor any outside flags needed for the real compiler.
* FortranCInterface: Support '=' in language flagsBrad King2009-12-151-2/+2
| | | | | | | | The commit "FortranCInterface: Honor language flags in checks" taught the FortranCInterface module to pass C and Fortran flags into its detection and verification checks. We improve on the change to allow the '=' character in the language flags. This requires passing the cache entry type with the -D options.
* Add one more possible error message from curl for the failed submit tests.David Cole2009-12-141-0/+1
|
* Test FortranCInterface flag propagationBrad King2009-12-144-0/+81
| | | | | | We create test FortranC.Flags to try passing per-language flags from a project into its FortranCInterface detect/verify checks. We wrap the compilers with scripts that enforce presence of expected flags.
* New decision method to enable Fortran testsBrad King2009-12-102-14/+50
| | | | | | | | | | CMake does not enable Fortran for its own build, but it needs to find a Fortran compiler to know if it is possible to enable Fortran tests. Previously we searched for a hard-coded list of Fortran compilers which was duplicated from the CMakeDetermineFortranCompiler.cmake module. We now run CMake on a small test project that enables the Fortran language and reports the compiler it found. This represents a more realistic check of whether the Fortran tests will be able to find a compiler.
* Always use a configuration for CMake testsBrad King2009-12-101-15/+3
| | | | | | | | | | Previously our EnforceConfig script that loads at test-time would only enforce a non-empty CTEST_CONFIGURATION_TYPE for CMake 2.6.2 and lower. Now we simply always enforce use of a configuration, and select one of the configurations that was built if none is given. This is necessary to run tests like CMake.Install that need to know the configuration with which CMake was built.
* Test 'install' target of CMake itselfBrad King2009-12-102-0/+50
| | | | | | We create option CMake_TEST_INSTALL to enable a new CMake.Install test. It tests running the "make install" target to install CMake itself into a test directory. We enable the option by default for dashboard builds.
* Apply CMake test-time config to all testsBrad King2009-12-101-4/+0
| | | | | | We configure an EnforceConfig.cmake script to load at CTest time. Previously we loaded it from Tests/CTestTestfile.cmake, but now we load it from the top level so it applies to all tests.
* Create CMakeLibTests output dir for XcodeBrad King2009-12-091-0/+10
| | | | | | | | | Xcode 2.x forgets to create the target output directory before linking the individual architecture pieces of a universal binary for the target CMakeLibTests. Then it passes the directory to -L and -F options when linking the and warns that the directory does not exist. We work around the problem by using a pre-build rule on the target to create the output directory.
* Test XML encoding with UTF-8 character validationBrad King2009-12-082-0/+48
| | | | This creates a unit test for cmXMLSafe. See issue #10003.
* Test UTF-8 decodingBrad King2009-12-082-0/+126
| | | | This creates a unit test for cm_utf8. See issue #10003.
* Create CMakeLib test driver and test cmXMLParserBrad King2009-12-085-0/+49
| | | | | We create a new CMakeLibTests driver executable in which to writes unit tests for CMakeLib. Our first test is a smoke-test of cmXMLParser.
* Clean up CMake build tree 'bin' directoryBrad King2009-12-081-1/+1
| | | | | | | | We re-arrange EXECUTABLE_OUTPUT_PATH settings to avoid putting utility and test executables in the 'bin' directory of the build tree. This makes the directory look like that in the installation tree, except that on multi-configuration generators we still use a per-config subdirectory.
* Remove unused DumpDocumentation codeBrad King2009-12-081-10/+0
| | | | | | | The DumpDocumentation executable and some supporting code and tests were completely unused by CMake. Generation of documentation is done by the individual executables with --help* options. In this commit we simply remove the unused code, executable, and test.
* Force CheckSourceTree test to pass if the source tree is not a CVS checkout. ↵David Cole2009-12-071-0/+11
| | | | The test can only do its checking if cvs is available and the source tree is a cvs checkout. Also, allow for the possibility that backslash characters exist in the HOME environment variable, because they may when built in a cygwin environment on Windows.
* Remove WILL_FAIL property from BadExe test, since CTest was returning 0. ↵Zach Mullen2009-12-071-1/+2
| | | | Replaced with a pass regex.
* Cosmetic changes to previous commit, for consistency.Zach Mullen2009-12-072-3/+2
|
* Added a unit test for running a test command which exists but is not an ↵Zach Mullen2009-12-076-1/+50
| | | | executable, because it previously caused the outer ctest process to fail.
* Fix cvs password problems during the CMake.CheckSourceTree test. Make sure ↵David Cole2009-12-042-0/+15
| | | | cvs has access to the original value of the HOME environment variable and not the 'CMake testing' value of it so that any cvs passwords set up on the machine work to get the list of local modifications using 'cvs up'...
* Fix issue #2336 - honor the -C arg to ctest. Honor it for all stages of ↵David Cole2009-12-047-4/+323
| | | | running -D dashboards from the command line and running ctest_configure, ctest_build and ctest_test commands in -S scripts. Also, allow a script to change it by setting the CTEST_CONFIGURATION_TYPE variable: allows for multiple configuration build/test cycles within one script. Add a new signature for the cmake command build_command that accepts CONFIGURATION as one argument. The original build_command signature is still there, but now marked as deprecated in the documentation. Of course... also add CTestConfig tests to verify that -C is honored for -D dashboards and -S scripts.
* Remove CMAKE_SHARED_MODULE_RUNTIME_${lang}_FLAGBrad King2009-12-021-4/+0
| | | | | This platform configuration variable is unused. Modules are built using the value of CMAKE_SHARED_LIBRARY_RUNTIME_${lang}_FLAG.
* Remove unnecessary configure time operations from CTestTest* testsZach Mullen2009-12-026-48/+0
|
* Make CTestTestTimeout time configurableBrad King2009-12-023-3/+9
| | | | | | | | | | | | | | | | In this test we start up a cmake script that runs a process that sleeps, and the timeout for the script is shorter than the sleep time. However, in order to properly detect that the sleeping grandchild is killed when the script times out we need to give sufficient time for the script to start the grandchild. Otherwise the log file for the grandchild is not available. On some (cygwin) builds our previous 1 second timeout for the script was not long enough to let the interpreter load and start the grandchild. We make the timeout time configurable by setting CTestTestTimeout_TIME in the cache for CMake itself. It tells the test how long to let the script run. The grandchild always sleeps for 4 seconds longer to ensure a comfortable window during which the process tree can be killed.
* Remove unused code from CTest test suiteBrad King2009-12-027-79/+5
| | | | | We remove from Tests/CTestTest*/CMakeLists.txt some historical cruft that is no longer used by the test suite.
* Always use a configuration for CTestTestTimeoutBrad King2009-12-012-1/+14
| | | | | | | | This test requires that the dashboard script it drives be invoked with "ctest -C <config> -S ...". We create a "CTestTest_CONFIG" variable to hold a configuration selected at test time. We use the configuration given to the outer CTest, if any, and then default to either Debug or the CMAKE_BUILD_TYPE.
* CTest: Test process tree kill on timeoutBrad King2009-11-305-3/+34
| | | | | | | | | | | We extend the CTestTestTimeout test to check that when a test times out its children (grandchildren of ctest) are killed. Instead of running the timeout executable directly, we run it through a cmake script that redirects the timeout executable output to a file. A second test later runs and verifies that the timeout executable was unable to complete and write data to the log file. Only if the first inner test times out and the second inner test passes (log is empty) does the CTestTestTimeout test pass.
* Cleanup CMakeBuildTest in test_clean targetBrad King2009-11-301-0/+1
| | | | | The test_clean target is supposed to remove all test build directories. We add the build directory for CMakeBuildTest because it was missing.
* Improve fake $HOME test isolation codeBrad King2009-11-242-6/+10
| | | | | | | | | | | | | The commit "Fake $HOME to isolate tests from user" started setting $HOME in the CTest script environment. On some platforms tests depend on some local configuration in the home directory, such as the "cvs login" for KWSys in CTestTest3. In this commit we now construct a fake home dir during CMake config step and populate it with a .cvspass file needed by the test. We also check CTEST_NO_TEST_HOME to optionally disable the test home. See issue #9949.
* Test CMP0015 OLD and NEW link_directories behaviorBrad King2009-11-246-0/+67
| | | | | We create a LinkDirectory test to check that the policy OLD and NEW behaviors work as documented. See issue #9697.
* Fake $HOME to isolate tests from userBrad King2009-11-231-0/+7
| | | | | | | | | | On platforms with $HOME in the environment, some of our features use it to store information in the user home directory. However, tests for these features should not touch the real user home directory. Instead we configure a fake $HOME that points inside the build tree for use during testing. See issue #9949.
* BUG 9950: increase timeout for BootstrapTest to 1.5 hoursZach Mullen2009-11-231-1/+1
|
* Fix get_filename_component(... REALPATH) work dirBrad King2009-11-181-0/+15
| | | | | | | The commit "Fix get_filename_component ABSOLUTE mode" broke REALPATH treatment of relative paths because it stopped storing the absolute path in local variable 'filename'. This commit fixes the call to GetRealPath to use the proper local variable and adds a test.
* SimpleInstall test now builds an installer package if CTEST_TEST_CPACK is ON ↵David Cole2009-11-163-2/+17
| | | | at the Tests/CMakeLists.txt level.
* Change logic of ctest subdirs command to allow for absolute paths. Also ↵Zach Mullen2009-11-107-1/+18
| | | | added test coverage for passing absolute paths to subdirs.
* Allow test to work on machines with umasks that do not allow files to be ↵Bill Hoffman2009-11-091-0/+10
| | | | overwritten.
* Fix TRY_RUN cross compile test to pass consistentlyZach Mullen2009-11-092-1/+4
|
* Added test coverage for TRY_RUN in cross compile mode.Zach Mullen2009-11-093-0/+17
|
* Fix issue #9851 - only seed the random number generator on the first call to ↵David Cole2009-11-061-0/+8
| | | | STRING(RANDOM or if given the new RANDOM_SEED argument. Add test and documentation of new argument.