CTestScriptVariableCommandLine-check.cmake 1.7 KB

12345678910111213141516171819202122232425262728293031323334
  1. set(THIRD_PARTY_REGEX "<Subproject name=\"MyThirdPartyDependency\">.*<Label>MyThirdPartyDependency</Label>.*</Subproject>")
  2. set(SUBPROJECTS_REGEX "${THIRD_PARTY_REGEX}")
  3. file(GLOB configure_xml_file "${RunCMake_TEST_BINARY_DIR}/Testing/*/Configure.xml")
  4. if(configure_xml_file)
  5. file(READ "${configure_xml_file}" configure_xml)
  6. if(NOT configure_xml MATCHES "${SUBPROJECTS_REGEX}.*<Configure>")
  7. set(RunCMake_TEST_FAILED "Configure.xml does not contain the expected list of subprojects")
  8. endif()
  9. else()
  10. set(RunCMake_TEST_FAILED "Configure.xml not found")
  11. endif()
  12. file(GLOB build_xml_file "${RunCMake_TEST_BINARY_DIR}/Testing/*/Build.xml")
  13. if(build_xml_file)
  14. file(READ "${build_xml_file}" build_xml)
  15. set(BUILD_ERROR_REGEX "<Failure type=\"Error\">.*<Labels>.*<Label>MyThirdPartyDependency</Label>.*<Label>NotASubproject</Label>.*</Labels>")
  16. if(NOT build_xml MATCHES "${SUBPROJECTS_REGEX}.*<Build>.*${BUILD_ERROR_REGEX}.*</Build>")
  17. set(RunCMake_TEST_FAILED "Build.xml does not contain the expected list of subprojects and labels")
  18. endif()
  19. else()
  20. set(RunCMake_TEST_FAILED "Build.xml not found")
  21. endif()
  22. file(GLOB test_xml_file "${RunCMake_TEST_BINARY_DIR}/Testing/*/Test.xml")
  23. if(test_xml_file)
  24. file(READ "${test_xml_file}" test_xml)
  25. set(TEST_NOTRUN_REGEX "<Test Status=\"notrun\">.*<Labels>.*<Label>MyThirdPartyDependency</Label>.*<Label>NotASubproject</Label>.*</Labels>")
  26. if(NOT test_xml MATCHES "${SUBPROJECTS_REGEX}.*<Testing>.*${TEST_FAILED_REGEX}.*${TEST_PASSED_REGEX}.*${TEST_NOTRUN_REGEX}.*</Testing>")
  27. set(RunCMake_TEST_FAILED "Test.xml does not contain the expected list of subprojects and labels")
  28. endif()
  29. else()
  30. set(RunCMake_TEST_FAILED "${CTEST_BINARY_DIRECTORY}/Testing/*/Test.xml not found")
  31. endif()