summaryrefslogtreecommitdiff
path: root/projects/SelfTest/WarnAboutNoTests.cmake
blob: 4637e3f3c7f788368633a8a667fbd4f5a88161ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# Workaround for a peculiarity where CTest disregards the return code from a
# test command if a PASS_REGULAR_EXPRESSION is also set
execute_process(
    COMMAND ${CMAKE_ARGV3} -w NoTests "___nonexistent_test___"
    RESULT_VARIABLE ret
    OUTPUT_VARIABLE out
)

message("${out}")

if(NOT ${ret} MATCHES "^[0-9]+$")
    message(FATAL_ERROR "${ret}")
endif()

if(${ret} EQUAL 0)
    message(FATAL_ERROR "Expected nonzero return code")
elseif(${out} MATCHES "Helper failed with")
    message(FATAL_ERROR "Helper failed")
endif()