You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
cmake/Tests/RunCMake/ctest_test/TestExtraLabels-check.cmake

26 lines
1.1 KiB

file(READ "${RunCMake_TEST_BINARY_DIR}/Testing/TAG" _tag)
string(REGEX REPLACE "^([^\n]*)\n.*$" "\\1" _date "${_tag}")
file(READ "${RunCMake_TEST_BINARY_DIR}/Testing/${_date}/Test.xml" _test_contents)
# Check labels.
STRING(REGEX MATCHALL [[<Label>label1</Label>]] matches "${_test_contents}")
list(LENGTH matches n_matches)
if(NOT n_matches EQUAL 1)
string(APPEND RunCMake_TEST_FAILED "expected 1 match for label1, found ${n_matches}")
endif()
STRING(REGEX MATCHALL [[<Label>label2</Label>]] matches "${_test_contents}")
list(LENGTH matches n_matches)
if(NOT n_matches EQUAL 1)
string(APPEND RunCMake_TEST_FAILED "expected 1 match for label2, found ${n_matches}")
endif()
STRING(REGEX MATCHALL [[<Label>label3</Label>]] matches "${_test_contents}")
list(LENGTH matches n_matches)
if(NOT n_matches EQUAL 1)
string(APPEND RunCMake_TEST_FAILED "expected 1 match for label3, found ${n_matches}")
endif()
# Check test output.
if(NOT _test_contents MATCHES "<Value>before\nafter\n</Value>")
string(APPEND RunCMake_TEST_FAILED "Could not find expected output in Test.xml")
endif()