I just realized why this isn't working -- it's actually not a regression. In this release we decided that the costs should only be taken into account in a parallel case (ctest -j N). Many users have implicit dependencies based on the order of their add_test calls, so we didn't want to break backward compatibility for those not using parallel ctest.
The non-parallel way to specify a test to run last is simply to make it the last add_test call. -Zach On Fri, Nov 26, 2010 at 10:20 AM, Zach Mullen <zach.mul...@kitware.com>wrote: > > > On Tue, Nov 23, 2010 at 6:02 PM, David Cole <david.c...@kitware.com>wrote: > >> It might be due to this commit: >> >> http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=142edf8ad4baccd991a6a8a3e5283d0b575acca2 >> (first released in 2.8.3) >> >> Or this one: >> >> http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b4d27dc041c9164d6f3ad39e192f4b7d116ca3b3 >> (first released in 2.8.2) >> >> Either way, seems like a bug to me. If you explicitly specify a COST >> property value, especially a negative one to induce "last run" status, >> then it should be honored over either historical average measurement >> or "failed last time, so run it first this time" behavior. >> >> Zach, do you agree? >> >> Sure do, this is a bug. I'll take a look at it today. > > -Zach > >> >> Thanks, >> David >> >> >> On Tue, Nov 23, 2010 at 5:36 PM, Tyler Roscoe <ty...@cryptio.net> wrote: >> > I use set_tests_properties (... COST -500) to force my code coverage >> > checks to run after all the unit tests have run. This has stopped >> > working and I'm reasonably confident that the only thing that changed >> > was an upgrade from cmake 2.8.0 or 2.8.1 to 2.8.3. >> > >> > I couldn't find anything in the bug tracker or in the release notes >> > suggesting that COST or test properties were changed in 2.8.3. >> > >> > I'm still getting lines like this in my generated CTestTestfile.cmake: >> > >> > SET_TESTS_PROPERTIES(rs_exerciser_2dgrid PROPERTIES COST "-500" >> FAIL_REGULAR_EXPRESSION "TP_EXERCISER_FAIL") >> > >> > and the FAIL_REGULAR_EXPRESSION property seems to be working just fine. >> > >> > >> > I've included a small repro case below. This looks like a regression. >> Should I >> > open a bug? >> > >> > Thanks, >> > tyler >> > >> > >> > [tyle...@tpb006:~/cmake-test-properties-test]$ cat CMakeLists.txt >> > cmake_minimum_required(VERSION 2.8) >> > project(p) >> > enable_testing() >> > >> > add_test (i_should_run_second echo i should run second) >> > set_tests_properties (i_should_run_second PROPERTIES COST -1) >> > add_test (i_should_run_first echo i should run first) >> > >> > [tyle...@tpb006:~/cmake-test-properties-test]$ mkdir b && cd b && cmake >> .. >> > -- The C compiler identification is GNU >> > -- The CXX compiler identification is GNU >> > -- Check for working C compiler: /usr/bin/gcc >> > -- Check for working C compiler: /usr/bin/gcc -- works >> > -- Detecting C compiler ABI info >> > -- Detecting C compiler ABI info - done >> > -- Check for working CXX compiler: /usr/bin/c++ >> > -- Check for working CXX compiler: /usr/bin/c++ -- works >> > -- Detecting CXX compiler ABI info >> > -- Detecting CXX compiler ABI info - done >> > -- Configuring done >> > -- Generating done >> > -- Build files have been written to: >> /tpb006/tylermr/cmake-test-properties-test/b >> > >> > [tyle...@tpb006:~/cmake-test-properties-test/b]$ ctest --version >> > ctest version 2.8.3 >> > [tyle...@tpb006:~/cmake-test-properties-test/b]$ ctest >> > Test project /tpb006/tylermr/cmake-test-properties-test/b >> > Start 1: i_should_run_second >> > 1/2 Test #1: i_should_run_second .............. Passed 0.01 sec >> > Start 2: i_should_run_first >> > 2/2 Test #2: i_should_run_first ............... Passed 0.01 sec >> > >> > 100% tests passed, 0 tests failed out of 2 >> > >> > Total Test time (real) = 0.04 sec >> > >> > [tyle...@tpb006:~/cmake-test-properties-test/b]$ >> /usr/local/cmake-2.8.1-Linux-i386/bin/ctest --version >> > ctest version 2.8.1 >> > [tyle...@tpb006:~/cmake-test-properties-test/b]$ >> /usr/local/cmake-2.8.1-Linux-i386/bin/ctest >> > Test project /tpb006/tylermr/cmake-test-properties-test/b >> > Start 2: i_should_run_first >> > 1/2 Test #2: i_should_run_first ............... Passed 0.01 sec >> > Start 1: i_should_run_second >> > 2/2 Test #1: i_should_run_second .............. Passed 0.01 sec >> > >> > 100% tests passed, 0 tests failed out of 2 >> > >> > Total Test time (real) = 0.02 sec >> > >> > _______________________________________________ >> > Powered by www.kitware.com >> > >> > Visit other Kitware open-source projects at >> http://www.kitware.com/opensource/opensource.html >> > >> > Please keep messages on-topic and check the CMake FAQ at: >> http://www.cmake.org/Wiki/CMake_FAQ >> > >> > Follow this link to subscribe/unsubscribe: >> > http://www.cmake.org/mailman/listinfo/cmake >> > >> > > >
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake