diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/CMakeLists.txt | 44 | ||||
-rw-r--r-- | test/find_package_test.cmake.in | 24 |
2 files changed, 68 insertions, 0 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt new file mode 100644 index 0000000..4758230 --- /dev/null +++ b/test/CMakeLists.txt | |||
@@ -0,0 +1,44 @@ | |||
1 | add_test(NAME zlib_test_install | ||
2 | COMMAND ${CMAKE_COMMAND} --install ${zlib_BINARY_DIR} | ||
3 | --prefix ${CMAKE_CURRENT_BINARY_DIR}/test_install | ||
4 | --config $<CONFIG> | ||
5 | WORKING_DIRECTORY ${zlib_BINARY_DIR}) | ||
6 | |||
7 | file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test) | ||
8 | |||
9 | configure_file(${CMAKE_CURRENT_SOURCE_DIR}/find_package_test.cmake.in | ||
10 | ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test/CMakeLists.txt) | ||
11 | |||
12 | add_test(NAME zlib_test_configure_find_package | ||
13 | COMMAND ${CMAKE_COMMAND} | ||
14 | -B${CMAKE_CURRENT_BINARY_DIR}/findpackage_test_build | ||
15 | -DCMAKE_BUILD_TYPE=$<CONFIG> | ||
16 | -DCMAKE_INSTALL_PREFIX=${CMAKE_CURRENT_BINARY_DIR}/test_install | ||
17 | -DZDIR=${CMAKE_CURRENT_BINARY_DIR}/test_install/${CMAKE_INSTALL_LIBDIR} | ||
18 | --fresh | ||
19 | -G "${CMAKE_GENERATOR}" | ||
20 | -S${CMAKE_CURRENT_BINARY_DIR}/findpackage_test) | ||
21 | |||
22 | |||
23 | add_test(NAME zlib_test_build_find_package | ||
24 | COMMAND ${CMAKE_COMMAND} --build | ||
25 | ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test_build | ||
26 | WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test_build) | ||
27 | |||
28 | add_test(NAME zlib_test_test_find_package | ||
29 | COMMAND ${CMAKE_CTEST_COMMAND} -C $<CONFIG> | ||
30 | WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test_build) | ||
31 | |||
32 | set_tests_properties(zlib_test_install PROPERTIES | ||
33 | FIXTURES_SETUP install) | ||
34 | |||
35 | set_tests_properties(zlib_test_configure_find_package PROPERTIES | ||
36 | FIXTURES_REQUIRED install | ||
37 | FIXTURES_SETUP config) | ||
38 | |||
39 | set_tests_properties(zlib_test_build_find_package PROPERTIES | ||
40 | FIXTURES_REQUIRED config | ||
41 | FIXTURES_SETUP build) | ||
42 | |||
43 | set_tests_properties(zlib_test_test_find_package PROPERTIES | ||
44 | FIXTURES_REQUIRED build) | ||
diff --git a/test/find_package_test.cmake.in b/test/find_package_test.cmake.in new file mode 100644 index 0000000..c1c11d0 --- /dev/null +++ b/test/find_package_test.cmake.in | |||
@@ -0,0 +1,24 @@ | |||
1 | cmake_minimum_required(VERSION 3.5) | ||
2 | |||
3 | project(zlib_find_package_test | ||
4 | LANGUAGES C | ||
5 | VERSION 1.3.1.1) | ||
6 | |||
7 | enable_testing() | ||
8 | find_package(zlib CONFIG REQUIRED) | ||
9 | |||
10 | if(${ZLIB_BUILD_SHARED}) | ||
11 | add_executable(test_example ${zlib_SOURCE_DIR}/test/example.c) | ||
12 | target_link_libraries(test_example ZLIB::ZLIB) | ||
13 | |||
14 | if(NOT ${CMAKE_SHARED_LIBRARY_SUFFIX} STREQUAL ".dll") | ||
15 | add_test(NAME zlib_test_example_shared COMMAND test_example) | ||
16 | endif(NOT ${CMAKE_SHARED_LIBRARY_SUFFIX} STREQUAL ".dll") | ||
17 | endif(${ZLIB_BUILD_SHARED}) | ||
18 | |||
19 | if(${ZLIB_BUILD_STATIC}) | ||
20 | add_executable(test_example_static ${zlib_SOURCE_DIR}/test/example.c) | ||
21 | target_link_libraries(test_example_static ZLIB::ZLIBSTATIC) | ||
22 | add_test(NAME zlib_test_example_static | ||
23 | COMMAND test_example_static) | ||
24 | endif(${ZLIB_BUILD_STATIC}) | ||