
########### next target ###############

set(ktoblzcheck_bin_SRCS ktoblzcheck.cc)
add_executable(ktoblzcheck-bin ${ktoblzcheck_bin_SRCS})
target_link_libraries(ktoblzcheck-bin ktoblzcheck)
set_target_properties(ktoblzcheck-bin PROPERTIES OUTPUT_NAME ktoblzcheck)

install(TARGETS ktoblzcheck-bin DESTINATION bin)

add_test(
    NAME ktoblzcheck
    COMMAND ${TEST_WRAPPER} $<TARGET_FILE:ktoblzcheck-bin> --file=${TEST_PATH_PREFIX}${BANKDATA_FILEPATH} 20050550 1262693334
)

## This check should return 1. If not, error
#add_test(
#    NAME ktoblzcheck_invalid
#    COMMAND $<TARGET_FILE:ktoblzcheck-bin> --file=${BANKDATA_LOCAL_FILEPATH} 20050550 1262693333
#)

set(ctest_SRCS ctest.c)
add_executable(ctest ${ctest_SRCS})

########### next target ###############

set(benchmark_SRCS benchmark.cc)
add_executable(benchmark ${benchmark_SRCS})
target_link_libraries(benchmark ktoblzcheck)

add_test(
    NAME benchmark
    COMMAND ${TEST_WRAPPER} $<TARGET_FILE:benchmark> 5 ${TEST_PATH_PREFIX}${BANKDATA_FILEPATH}
)

########### next target ###############

#
# TODO:  seems to be redundant (see lib)
#
set(ibanchk_SRCS ibanchk.cc)
add_executable(ibanchk ${ibanchk_SRCS})
target_link_libraries(ibanchk ktoblzcheck)

# not working yet because of different return code
#add_test(
#    NAME ibanchk_invalid
#    COMMAND $<TARGET_FILE:ibanchk> "FR1420041010050500013X02606"
#)

add_test(
    NAME ibanchk_de
    COMMAND ${TEST_WRAPPER} $<TARGET_FILE:ibanchk> "DE89 3704 0044 0532 0130 00"
)
set_tests_properties(ibanchk_de PROPERTIES
    ENVIRONMENT XDG_DATA_DIRS=${TEST_PATH_PREFIX}${CMAKE_SOURCE_DIR}/src/bankdata
)

add_test(
    NAME ibanchk_fr
    COMMAND ${TEST_WRAPPER} $<TARGET_FILE:ibanchk> "fr14 2004 1010 0505 0001 3m02 606"
)
set_tests_properties(ibanchk_fr PROPERTIES
    ENVIRONMENT XDG_DATA_DIRS=${TEST_PATH_PREFIX}${CMAKE_SOURCE_DIR}/src/bankdata
)
