我将一些旧测试转换为cmake / ctest,如果输出文件包含特定的警告消息,则希望测试失败。
过去我会在输出文件中搜索特定的字符串。我已经使用execute_process来使用compare_files命令。是否有类似的命令来搜索文件中的字符串?
感谢您的帮助。
答案 0 :(得分:1)
不,但您可以使用file
将文件读入变量。 (http://www.cmake.org/cmake/help/v3.0/command/file.html)然后使用其中一个string
子命令。
file(READ foo TMPTXT)
string(FIND "${TMPTXT}" "needle" matchres)
message(STATUS ${matchres})
if(${matchres} EQUAL -1)
message(FATAL_ERROR "No match found")
endif ()
然后
${CMAKE_COMMAND} -P findmatch.cmake
细节可能有点不同,但这是一般的想法。