RunCMakeTest.cmake 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. include(RunCTest)
  2. # Isolate our ctest runs from external environment.
  3. unset(ENV{CTEST_PARALLEL_LEVEL})
  4. unset(ENV{CTEST_OUTPUT_ON_FAILURE})
  5. function(run_ctest_test CASE_NAME)
  6. set(CASE_CTEST_FIXTURES_ARGS "${ARGN}")
  7. run_ctest(${CASE_NAME})
  8. endfunction()
  9. #------------------------------------------------------------
  10. # CMake configure will pass
  11. #------------------------------------------------------------
  12. run_ctest_test(one INCLUDE one)
  13. run_ctest_test(two INCLUDE two)
  14. run_ctest_test(three INCLUDE three)
  15. run_ctest_test(setupFoo INCLUDE setupFoo)
  16. run_ctest_test(wontRun INCLUDE wontRun)
  17. #------------------------------------------------------------
  18. # CMake configure will fail due to cyclic test dependencies
  19. #------------------------------------------------------------
  20. set(CASE_CMAKELISTS_CYCLIC_CODE [[
  21. set_tests_properties(cyclicSetup PROPERTIES
  22. FIXTURES_SETUP "Foo"
  23. FIXTURES_REQUIRED "Foo")
  24. ]])
  25. run_ctest(cyclicSetup)
  26. set(CASE_CMAKELISTS_CYCLIC_CODE [[
  27. set_tests_properties(cyclicCleanup PROPERTIES
  28. FIXTURES_CLEANUP "Foo"
  29. FIXTURES_REQUIRED "Foo")
  30. ]])
  31. run_ctest(cyclicCleanup)