diff --git a/CMakeLists.txt b/CMakeLists.txt index 2c7627ef..56330a4c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -100,35 +100,21 @@ add_custom_target(version_test ) if( EXIV2_BUILD_SAMPLES ) - ## - # tests - if( EXIV2_BUILD_UNIT_TESTS ) - add_custom_target(tests - COMMAND env EXIV2_BINDIR="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" python3 runner.py bash_tests/unit_test.py - COMMAND env EXIV2_BINDIR="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" python3 runner.py bash_tests/testcases.py --verbose - COMMAND env EXIV2_BINDIR="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" python3 runner.py - COMMAND env EXIV2_BINDIR="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" python3 runner.py bash_tests/version_test.py - WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/tests" - ) - else() - add_custom_target(tests - COMMAND env EXIV2_BINDIR="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" python3 runner.py bash_tests/testcases.py --verbose - COMMAND env EXIV2_BINDIR="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" python3 runner.py - COMMAND env EXIV2_BINDIR="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" python3 runner.py bash_tests/version_test.py - WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/tests" - ) - endif() - add_custom_target(python_tests - COMMAND env EXIV2_BINDIR="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" python3 runner.py - WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/tests" + add_test(NAME bashTests + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/tests + COMMAND env EXIV2_BINDIR=${CMAKE_RUNTIME_OUTPUT_DIRECTORY} python3 runner.py bash_tests/testcases.py --verbose ) - add_custom_target(bash_tests - COMMAND env EXIV2_BINDIR="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" python3 runner.py bash_tests/testcases.py --verbose - WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/tests" + add_test(NAME versionTests + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/tests + COMMAND env EXIV2_BINDIR=${CMAKE_RUNTIME_OUTPUT_DIRECTORY} python3 runner.py bash_tests/version_test.py ) + add_test(NAME pythonTests + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/tests + COMMAND env EXIV2_BINDIR=${CMAKE_RUNTIME_OUTPUT_DIRECTORY} python3 runner.py + ) + add_subdirectory( samples ) get_directory_property(SAMPLES DIRECTORY samples DEFINITION APPLICATIONS) - add_dependencies(tests exiv2lib exiv2 ${SAMPLES}) endif() if( EXIV2_ENABLE_NLS ) diff --git a/cmake/mainSetup.cmake b/cmake/mainSetup.cmake index fcaa21fa..9580d533 100644 --- a/cmake/mainSetup.cmake +++ b/cmake/mainSetup.cmake @@ -6,6 +6,7 @@ include(CheckFunctionExists) include(GenerateExportHeader) include(CMakeDependentOption) include(cmake/JoinPaths.cmake) +include(CTest) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) diff --git a/samples/CMakeLists.txt b/samples/CMakeLists.txt index d056420e..c405285e 100644 --- a/samples/CMakeLists.txt +++ b/samples/CMakeLists.txt @@ -40,7 +40,6 @@ foreach(entry ${SAMPLES}) set_target_properties(${target} PROPERTIES COMPILE_FLAGS ${EXTRA_COMPILE_FLAGS}) list(APPEND APPLICATIONS ${target}) - add_test( ${target}_test ${target} ) target_include_directories(${target} PRIVATE ${CMAKE_SOURCE_DIR}/src) # To find unused.h if ( NOT ${target} MATCHES ".*test.*") # don't install tests install( TARGETS ${target} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) diff --git a/unitTests/CMakeLists.txt b/unitTests/CMakeLists.txt index beff776f..66ed7ca4 100644 --- a/unitTests/CMakeLists.txt +++ b/unitTests/CMakeLists.txt @@ -50,3 +50,5 @@ set_target_properties(unit_tests PROPERTIES if (MSVC) set_target_properties(unit_tests PROPERTIES LINK_FLAGS "/ignore:4099") endif() + +add_test(NAME unit_tests COMMAND unit_tests)