diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000000000000000000000000000000000000..547fec933ac5b46e3af42095849ce813b1cfa928 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,45 @@ +image: localhost:5000/ubuntu_gcc +#before_script: +# - apt-get update +# - apt-get -y install cmake g++-7 gcovr bc +# - apt-get -y upgrade + +cache: + key: "$CI_COMMIT_REF_SLUG" + paths: + - build/ + untracked: true + +stages: + - build + - test + - deploy + +build: + stage: build + script: + - mkdir -p build + - cd build + - CXX=g++-7 CC=gcc-7 cmake .. -DCMAKE_BUILD_TYPE=Coverage + - make pastis + +tests: + stage: test + script: + - ls > /dev/null # seems necessary to ensure build is here... + - cd build + - make unit_tests + - make coverage-report + +pages: + stage: deploy + dependencies: + - tests + script: + - ls > /dev/null # seems necessary to ensure build is here... + - rm -rf public/ + - mv build/coverage/ public/ + artifacts: + paths: + - public + expire_in: 30 days diff --git a/README.md b/README.md index 0231df2a18104e5caf072c9e24029a2541664701..998ca9a0365578584379848a92fe8f0af0a3bf65 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,14 @@ +Pipelines +========= + +> [](https://gitlab.delpinux.fr/code/pastis/pipelines) +[](https://gitlab.delpinux.fr/code/pastis/commits/develop) +[`develop`](https://gitlab.delpinux.fr/code/pastis/tree/develop) + +> [](https://gitlab.delpinux.fr/code/pastis/pipelines) +[](https://gitlab.delpinux.fr/code/pastis/commits/master) +[`master`](https://gitlab.delpinux.fr/code/pastis/tree/master) + Appetizer ========= diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 38635a1d76bccde15b7e0ec9edce17c334b7f0ad..2c1ac56dc2e5ba1886c5efc79709ea6f01deecd4 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -1,18 +1,21 @@ include_directories("${CATCH_INCLUDE_PATH}") - +include_directories("${PASTIS_BINARY_DIR}/src/utils") set(EXECUTABLE_OUTPUT_PATH ${PASTIS_BINARY_DIR}) + add_executable (unit_tests test_main.cpp test_PastisAssert.cpp test_RevisionInfo.cpp test_TinyMatrix.cpp - test_TinyVector.cpp) + test_TinyVector.cpp + ) target_include_directories(Catch INTERFACE ${CATCH_INCLUDE_DIR}) -target_link_libraries ( - unit_tests + +target_link_libraries (unit_tests PastisUtils - Catch) + Catch + ) enable_testing() diff --git a/tests/test_RevisionInfo.cpp b/tests/test_RevisionInfo.cpp index 9359c8cb33fae4ba34385166e50395bda75542d9..d5c9d4b50cb1fe60ac2b7e11108f224b4e0bf083 100644 --- a/tests/test_RevisionInfo.cpp +++ b/tests/test_RevisionInfo.cpp @@ -2,6 +2,13 @@ #include <RevisionInfo.hpp> +#include <pastis_git_revision.hpp> + TEST_CASE("RevisionInfo", "[utils]") { - REQUIRE(RevisionInfo::hasGitInfo() == true); +#ifdef HAS_PASTIS_GIT_INFO +#define HAS_GIT_INFO true +#else +#define HAS_GIT_INFO false +#endif + REQUIRE( (RevisionInfo::hasGitInfo() == HAS_GIT_INFO) ); }