diff --git a/.gitmodules b/.gitmodules index 9e54bc21a1af65fea7fdd4c5fa9fd92e20cae753..511a70b30c810c18b1b996207921483164bcc5cc 100644 --- a/.gitmodules +++ b/.gitmodules @@ -13,3 +13,6 @@ [submodule "libdap-stream-ch"] path = libdap-stream-ch url = https://github.com/kelvinblockchain/libdap-stream-ch +[submodule "test/libdap-test"] + path = test/libdap-test + url = https://github.com/kelvinblockchain/libdap-test diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000000000000000000000000000000000000..f2a5aa7faaf9a349eb1b24d4a33a221ece8410eb --- /dev/null +++ b/.travis.yml @@ -0,0 +1,28 @@ +sudo: required +language: cpp +compiler: gcc +dist: trusty +notifications: + email: false + +before_install: + - git submodule init + - git submodule update --recursive + +script: + - export CC=gcc-5 + - mkdir build + - cd build + - cmake -DBUILD_LIB_DAP_CLIENT_TESTS=ON ../ + - make + - ctest --verbose + +addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - gcc-5 + - libev-dev + - libmagic-dev + diff --git a/CMakeLists.txt b/CMakeLists.txt index b31f29a1c95afd77b9afb836afc2172ff263351e..a187fa9467fb197eb176b0c60abdbbc26bad451c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,6 +12,12 @@ add_subdirectory(libdap-server) add_subdirectory(libdap-stream) add_subdirectory(libdap-stream-ch) +if(BUILD_LIB_DAP_CLIENT_TESTS) + enable_testing() + add_subdirectory(test) +endif() + + file(GLOB DAP_CLIENT_SRCS *.c) file(GLOB DAP_CLIENT_HEADERS *.h) @@ -19,7 +25,5 @@ add_library(${PROJECT_NAME} STATIC ${DAP_CLIENT_SRCS} ${DAP_CLIENT_HEADERS}) target_link_libraries(${PROJECT_NAME} dap_crypto dap_core dap_http_server dap_session dap_stream) -#dap_udp_server dap_stream dap_session - target_include_directories(${PROJECT_NAME} INTERFACE .) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4ea6b6a688233d28707ffefb1600484d9c681e63 --- /dev/null +++ b/test/CMakeLists.txt @@ -0,0 +1,18 @@ +if(TARGET libdap_client_test) + return() # The project has already been built. +endif() +project(libdap_client_test) + +add_subdirectory(libdap-test) + +file(GLOB SOURCES *.c) +file(GLOB HEADERS *.h) + +add_executable(${PROJECT_NAME} ${SOURCES} ${HEADERS}) + +target_link_libraries(${PROJECT_NAME} dap_test dap_core) + +add_test( + NAME libdap_client_test + COMMAND libdap_client_test +) diff --git a/test/libdap-test b/test/libdap-test new file mode 160000 index 0000000000000000000000000000000000000000..d40ba8973440b7c712d5a64df03a312adcf7c2fd --- /dev/null +++ b/test/libdap-test @@ -0,0 +1 @@ +Subproject commit d40ba8973440b7c712d5a64df03a312adcf7c2fd diff --git a/test/main.c b/test/main.c new file mode 100644 index 0000000000000000000000000000000000000000..d015aec2588f35b803c5923f045beeb994a85583 --- /dev/null +++ b/test/main.c @@ -0,0 +1,7 @@ +#include "dap_common.h" + +int main(void) { + // switch off debug info from library + set_log_level(L_CRITICAL); + return 0; +}