From f44addc2a257630b07b38e4bc37468512c0528a5 Mon Sep 17 00:00:00 2001 From: emeric Date: Thu, 13 Feb 2020 20:04:20 +0100 Subject: [PATCH] Restored unit tests --- CMakeLists.txt | 3 ++- src/libs/CMakeLists.txt | 1 + src/libs/database/CMakeLists.txt | 1 + src/libs/database/test/CMakeLists.txt | 11 +++++++++++ .../libs/database/test}/DatabaseTest.cpp | 0 src/libs/recommendation/CMakeLists.txt | 6 +----- src/libs/som/CMakeLists.txt | 19 +++++++++++++++++++ .../som => som/impl}/DataNormalizer.cpp | 2 +- .../features/som => som/impl}/Network.cpp | 2 +- .../include}/som/DataNormalizer.hpp | 0 .../include}/som/InputVector.hpp | 2 ++ .../features => som/include}/som/Matrix.hpp | 0 .../features => som/include}/som/Network.hpp | 1 - src/libs/som/test/CMakeLists.txt | 11 +++++++++++ {test/som => src/libs/som/test}/SomTest.cpp | 4 ++-- src/libs/utils/CMakeLists.txt | 2 ++ 16 files changed, 54 insertions(+), 11 deletions(-) create mode 100644 src/libs/database/test/CMakeLists.txt rename {test/database => src/libs/database/test}/DatabaseTest.cpp (100%) create mode 100644 src/libs/som/CMakeLists.txt rename src/libs/{recommendation/impl/features/som => som/impl}/DataNormalizer.cpp (98%) rename src/libs/{recommendation/impl/features/som => som/impl}/Network.cpp (99%) rename src/libs/{recommendation/impl/features => som/include}/som/DataNormalizer.hpp (100%) rename src/libs/{recommendation/impl/features => som/include}/som/InputVector.hpp (99%) rename src/libs/{recommendation/impl/features => som/include}/som/Matrix.hpp (100%) rename src/libs/{recommendation/impl/features => som/include}/som/Network.hpp (99%) create mode 100644 src/libs/som/test/CMakeLists.txt rename {test/som => src/libs/som/test}/SomTest.cpp (98%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7eef4529..c41adcdb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,8 +8,9 @@ set(CMAKE_CXX_STANDARD_REQUIRED True) find_package(PkgConfig) pkg_check_modules(IMAGEMAGICKXX REQUIRED ImageMagick++) +enable_testing() -SUBDIRS(src) +add_subdirectory(src) install(DIRECTORY approot DESTINATION share/lms) install(DIRECTORY docroot DESTINATION share/lms) diff --git a/src/libs/CMakeLists.txt b/src/libs/CMakeLists.txt index 97b099a9..2619ec6e 100644 --- a/src/libs/CMakeLists.txt +++ b/src/libs/CMakeLists.txt @@ -5,6 +5,7 @@ add_subdirectory(cover) add_subdirectory(database) add_subdirectory(recommendation) add_subdirectory(scanner) +add_subdirectory(som) add_subdirectory(subsonic) add_subdirectory(utils) diff --git a/src/libs/database/CMakeLists.txt b/src/libs/database/CMakeLists.txt index 638fb2e2..aae05b4f 100644 --- a/src/libs/database/CMakeLists.txt +++ b/src/libs/database/CMakeLists.txt @@ -35,3 +35,4 @@ target_link_libraries(lmsdatabase PUBLIC install(TARGETS lmsdatabase DESTINATION lib) +add_subdirectory(test) diff --git a/src/libs/database/test/CMakeLists.txt b/src/libs/database/test/CMakeLists.txt new file mode 100644 index 00000000..ac42aa6b --- /dev/null +++ b/src/libs/database/test/CMakeLists.txt @@ -0,0 +1,11 @@ + +add_executable(test-database + DatabaseTest.cpp + ) + +target_link_libraries(test-database PRIVATE + lmsdatabase + ) + +add_test(NAME database COMMAND test-database) + diff --git a/test/database/DatabaseTest.cpp b/src/libs/database/test/DatabaseTest.cpp similarity index 100% rename from test/database/DatabaseTest.cpp rename to src/libs/database/test/DatabaseTest.cpp diff --git a/src/libs/recommendation/CMakeLists.txt b/src/libs/recommendation/CMakeLists.txt index c83ee6aa..cdcf20bd 100644 --- a/src/libs/recommendation/CMakeLists.txt +++ b/src/libs/recommendation/CMakeLists.txt @@ -2,8 +2,6 @@ add_library(lmsrecommendation SHARED impl/Engine.cpp impl/ProviderCreator.cpp - impl/features/som/DataNormalizer.cpp - impl/features/som/Network.cpp ) target_include_directories(lmsrecommendation INTERFACE @@ -16,9 +14,7 @@ target_include_directories(lmsrecommendation PRIVATE target_link_libraries(lmsrecommendation PRIVATE lmsdatabase - ) - -target_link_libraries(lmsrecommendation PUBLIC + lmssom ) install(TARGETS lmsrecommendation DESTINATION lib) diff --git a/src/libs/som/CMakeLists.txt b/src/libs/som/CMakeLists.txt new file mode 100644 index 00000000..2d7ca9ef --- /dev/null +++ b/src/libs/som/CMakeLists.txt @@ -0,0 +1,19 @@ + +add_library(lmssom STATIC + impl/DataNormalizer.cpp + impl/Network.cpp + ) + +target_include_directories(lmssom INTERFACE + include + ) + +target_include_directories(lmssom PRIVATE + include + ) + +target_link_libraries(lmssom PUBLIC + lmsutils + ) + +add_subdirectory(test) diff --git a/src/libs/recommendation/impl/features/som/DataNormalizer.cpp b/src/libs/som/impl/DataNormalizer.cpp similarity index 98% rename from src/libs/recommendation/impl/features/som/DataNormalizer.cpp rename to src/libs/som/impl/DataNormalizer.cpp index d6498fcf..a4c39351 100644 --- a/src/libs/recommendation/impl/features/som/DataNormalizer.cpp +++ b/src/libs/som/impl/DataNormalizer.cpp @@ -17,7 +17,7 @@ * along with LMS. If not, see . */ -#include "DataNormalizer.hpp" +#include "som/DataNormalizer.hpp" #include #include diff --git a/src/libs/recommendation/impl/features/som/Network.cpp b/src/libs/som/impl/Network.cpp similarity index 99% rename from src/libs/recommendation/impl/features/som/Network.cpp rename to src/libs/som/impl/Network.cpp index 0431c966..deea6f7b 100644 --- a/src/libs/recommendation/impl/features/som/Network.cpp +++ b/src/libs/som/impl/Network.cpp @@ -17,7 +17,7 @@ * along with LMS. If not, see . */ -#include "Network.hpp" +#include "som/Network.hpp" #include #include diff --git a/src/libs/recommendation/impl/features/som/DataNormalizer.hpp b/src/libs/som/include/som/DataNormalizer.hpp similarity index 100% rename from src/libs/recommendation/impl/features/som/DataNormalizer.hpp rename to src/libs/som/include/som/DataNormalizer.hpp diff --git a/src/libs/recommendation/impl/features/som/InputVector.hpp b/src/libs/som/include/som/InputVector.hpp similarity index 99% rename from src/libs/recommendation/impl/features/som/InputVector.hpp rename to src/libs/som/include/som/InputVector.hpp index 68d5834e..058e0fee 100644 --- a/src/libs/recommendation/impl/features/som/InputVector.hpp +++ b/src/libs/som/include/som/InputVector.hpp @@ -23,6 +23,8 @@ #include #include +#include "utils/Exception.hpp" + namespace SOM { diff --git a/src/libs/recommendation/impl/features/som/Matrix.hpp b/src/libs/som/include/som/Matrix.hpp similarity index 100% rename from src/libs/recommendation/impl/features/som/Matrix.hpp rename to src/libs/som/include/som/Matrix.hpp diff --git a/src/libs/recommendation/impl/features/som/Network.hpp b/src/libs/som/include/som/Network.hpp similarity index 99% rename from src/libs/recommendation/impl/features/som/Network.hpp rename to src/libs/som/include/som/Network.hpp index cf64a83c..cf04cf72 100644 --- a/src/libs/recommendation/impl/features/som/Network.hpp +++ b/src/libs/som/include/som/Network.hpp @@ -25,7 +25,6 @@ #include #include -#include "utils/Exception.hpp" #include "InputVector.hpp" #include "Matrix.hpp" diff --git a/src/libs/som/test/CMakeLists.txt b/src/libs/som/test/CMakeLists.txt new file mode 100644 index 00000000..aaaf43d4 --- /dev/null +++ b/src/libs/som/test/CMakeLists.txt @@ -0,0 +1,11 @@ + +add_executable(test-som + SomTest.cpp + ) + +target_link_libraries(test-som PRIVATE + lmssom + ) + +add_test(NAME som COMMAND test-som) + diff --git a/test/som/SomTest.cpp b/src/libs/som/test/SomTest.cpp similarity index 98% rename from test/som/SomTest.cpp rename to src/libs/som/test/SomTest.cpp index 70aad7a1..6f4edb37 100644 --- a/test/som/SomTest.cpp +++ b/src/libs/som/test/SomTest.cpp @@ -21,8 +21,8 @@ #include #include -#include "DataNormalizer.hpp" -#include "Network.hpp" +#include "som/DataNormalizer.hpp" +#include "som/Network.hpp" using namespace SOM; diff --git a/src/libs/utils/CMakeLists.txt b/src/libs/utils/CMakeLists.txt index ba5c5f01..c468be2f 100644 --- a/src/libs/utils/CMakeLists.txt +++ b/src/libs/utils/CMakeLists.txt @@ -24,7 +24,9 @@ target_link_libraries(lmsutils PRIVATE ) target_link_libraries(lmsutils PUBLIC + boost_system stdc++fs + wt ) install(TARGETS lmsutils DESTINATION lib)