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.

121 lines
4.2 KiB

#1st TEST RESULT_VARIABLE ONLY
execute_process(COMMAND ${EXIT_CODE_EXE} "zero_exit"
RESULT_VARIABLE r0
)
message(STATUS " 1 - 1 RESULT_VARIABLE: ${r0}")
if(NOT r0 EQUAL 0)
message(FATAL_ERROR "zero exit code expected")
endif()
execute_process(COMMAND ${EXIT_CODE_EXE} "non_zero_exit"
RESULT_VARIABLE r01
ERROR_QUIET
)
message(STATUS " 1 - 2 RESULT_VARIABLE: ${r01}")
if(r01 EQUAL 0)
message(FATAL_ERROR "non-zero exit code expected")
endif()
#2nd TEST RESULT_VARIABLE and RESULTS_VARIABLE
execute_process(COMMAND ${EXIT_CODE_EXE} "zero_exit"
RESULT_VARIABLE r1
RESULTS_VARIABLE r1s
)
message(STATUS " 2 - 1 RESULT_VARIABLE: ${r1}")
message(STATUS " 2 - 1 RESULTS_VARIABLE: ${r1s}")
if(NOT r1 EQUAL 0 OR NOT r1s EQUAL 0)
message(FATAL_ERROR "zero exit code expected")
endif()
execute_process(COMMAND ${EXIT_CODE_EXE} "non_zero_exit"
RESULT_VARIABLE r11
RESULTS_VARIABLE r11s
ERROR_QUIET
)
message(STATUS " 2 - 2 RESULT_VARIABLE: ${r11}")
message(STATUS " 2 - 2 RESULTS_VARIABLE: ${r11s}")
if(r11 EQUAL 0 OR r11s EQUAL 0)
message(FATAL_ERROR "non-zero exit code expected")
endif()
#3rd TEST RESULTS_VARIABLE
execute_process(COMMAND ${EXIT_CODE_EXE} "zero_exit"
RESULTS_VARIABLE r2s
)
message(STATUS " 3 - 1 RESULTS_VARIABLE: ${r2s}")
if(NOT r2s EQUAL 0)
message(FATAL_ERROR "zero exit code expected")
endif()
execute_process(COMMAND ${EXIT_CODE_EXE} "non_zero_exit"
RESULTS_VARIABLE r21s
ERROR_QUIET
)
message(STATUS " 3 - 2 RESULTS_VARIABLE: ${r21s}")
if(r21s EQUAL 0)
message(FATAL_ERROR "non-zero exit code expected")
endif()
#4th TEST RESULT_VARIABLE and RESULTS_VARIABLE WITH MULTICOMMAND
execute_process(COMMAND ${EXIT_CODE_EXE} "non_zero_exit"
COMMAND ${EXIT_CODE_EXE} "zero_exit"
COMMAND ${EXIT_CODE_EXE} "non_zero_exit"
COMMAND ${EXIT_CODE_EXE} "zero_exit"
COMMAND ${EXIT_CODE_EXE} "non_zero_exit"
COMMAND ${EXIT_CODE_EXE} "zero_exit"
RESULT_VARIABLE r31
RESULTS_VARIABLE r31s
OUTPUT_QUIET
ERROR_QUIET
)
message(STATUS " 4 - 1 RESULT_VARIABLE: ${r31}")
message(STATUS " 4 - 1 RESULTS_VARIABLE: ${r31s}")
if(NOT r31 EQUAL 0)
message(FATAL_ERROR "zero exit code expected for last command")
endif()
list(LENGTH r31s r31sLen)
message(STATUS " 4 - 1 RESULTS_VARIABLE_LENGTH: ${r31sLen}")
if(NOT r31sLen EQUAL 6)
message(FATAL_ERROR "length of RESULTS_VARIABLE is not as expected")
else()
foreach(loop_var RANGE 5)
list(GET r31s ${loop_var} rsLocal)
math(EXPR isOdd "${loop_var} % 2")
if(isOdd)
if(NOT rsLocal EQUAL 0)
message(FATAL_ERROR "zero exit code expected")
endif()
else()
if(rsLocal EQUAL 0)
message(FATAL_ERROR "non-zero exit code expected")
endif()
endif()
endforeach()
endif()
#5th TEST RESULT_VARIABLE and RESULTS_VARIABLE WITH MULTICOMMAND
execute_process(COMMAND ${EXIT_CODE_EXE} "zero_exit"
COMMAND ${EXIT_CODE_EXE} "zero_exit"
COMMAND ${EXIT_CODE_EXE} "non_zero_exit"
RESULT_VARIABLE r41
RESULTS_VARIABLE r41s
OUTPUT_QUIET
ERROR_QUIET
)
message(STATUS " 5 - 1 RESULT_VARIABLE: ${r41}")
message(STATUS " 5 - 1 RESULTS_VARIABLE: ${r41s}")
if(r41 EQUAL 0)
message(FATAL_ERROR "non-zero exit code expected for last command")
endif()
list(LENGTH r41s r41sLen)
message(STATUS " 5 - 1 RESULTS_VARIABLE_LENGTH: ${r41sLen}")
if(NOT r31sLen EQUAL 6)
message(FATAL_ERROR "length of RESULTS_VARIABLE is not as expected")
else()
list(GET r41s 0 rsLocal)
if(NOT rsLocal EQUAL 0)
message(FATAL_ERROR "zero exit code expected")
endif()
list(GET r41s 1 rsLocal)
if(NOT rsLocal EQUAL 0)
message(FATAL_ERROR "zero exit code expected")
endif()
list(GET r41s 2 rsLocal)
if(rsLocal EQUAL 0)
message(FATAL_ERROR "non-zero exit code expected")
endif()
endif()