From aa7e39960426fdddb28279b4f68f0192a4e1ce3d Mon Sep 17 00:00:00 2001 From: Thomas Bernard Date: Fri, 21 Oct 2022 22:47:21 +0200 Subject: [PATCH] miniupnpc: make test with CMake fixes #531 --- .github/workflows/main.yml | 2 +- miniupnpc/CMakeLists.txt | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 20c32d7..526c4f4 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -31,7 +31,7 @@ jobs: run: make -C miniupnpc install DESTDIR=/tmp/miniupnpc_install - name: build miniupnpc with cmake - run: mkdir miniupnpc/cmake-build && cd miniupnpc/cmake-build && cmake .. && make + run: mkdir miniupnpc/cmake-build && cd miniupnpc/cmake-build && cmake .. && make && make test - name: install miniupnpc with cmake run: cd miniupnpc/cmake-build && make DESTDIR=/tmp/miniupnpc_cmake_install install diff --git a/miniupnpc/CMakeLists.txt b/miniupnpc/CMakeLists.txt index f79eb4f..fbc0470 100644 --- a/miniupnpc/CMakeLists.txt +++ b/miniupnpc/CMakeLists.txt @@ -219,7 +219,41 @@ if (UPNPC_BUILD_TESTS) ) target_link_libraries (testaddr_is_reserved PRIVATE miniupnpc-tests) + add_executable (testportlistingparse src/testportlistingparse.c + src/minixml.c src/portlistingparse.c) + target_include_directories (testportlistingparse PRIVATE + $) + target_link_libraries (testportlistingparse PRIVATE miniupnpc-tests) + + add_executable (minihttptestserver src/minihttptestserver.c) + # set (UPNPC_INSTALL_TARGETS ${UPNPC_INSTALL_TARGETS} testminixml minixmlvalid testupnpreplyparse testigddescparse testminiwget) + include(CTest) + add_test(NAME validateminixml + COMMAND minixmlvalid) + add_test(NAME validateminiwget + COMMAND ${CMAKE_SOURCE_DIR}/testminiwget.sh) + set_property(TEST validateminiwget + PROPERTY ENVIRONMENT + TESTSERVER=${CMAKE_BINARY_DIR}/minihttptestserver + TESTMINIWGET=${CMAKE_BINARY_DIR}/testminiwget) + add_test(NAME validateupnpreplyparse + COMMAND ${CMAKE_SOURCE_DIR}/testupnpreplyparse.sh + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}) + set_property(TEST validateupnpreplyparse + PROPERTY ENVIRONMENT + TESTUPNPREPLYPARSE=${CMAKE_BINARY_DIR}/testupnpreplyparse) + add_test(NAME validateportlistingparse + COMMAND testportlistingparse) + add_test(NAME validateigddescparse1 + COMMAND testigddescparse new_LiveBox_desc.xml new_LiveBox_desc.values + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/testdesc) + add_test(NAME validateigddescparse2 + COMMAND testigddescparse linksys_WAG200G_desc.xml linksys_WAG200G_desc.values + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/testdesc) + add_test(NAME validateaddr_is_reserved + COMMAND testaddr_is_reserved) + endif () configure_file(miniupnpc.pc.in miniupnpc.pc @ONLY)