From 1539aa803375bbb562559ab632d8ce22c6ce940b Mon Sep 17 00:00:00 2001 From: skachano Date: Tue, 21 Jun 2016 09:20:44 +0000 Subject: Merged the CMakeLists and added test_choose_by_farthest_point git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/branches/subsampling_and_spatialsearching@1318 636b058d-ea47-450e-bf9e-a15bfbe3eedb Former-commit-id: 534a2ac30a2177a780d1f483add2c472d4cedac3 --- .../include/gudhi/choose_by_farthest_point.h | 4 ++- src/Subsampling/test/CMakeLists.txt | 14 ++++++++- .../test/test_choose_farthest_point.cpp | 35 ++++++++++++++++++++++ 3 files changed, 51 insertions(+), 2 deletions(-) create mode 100644 src/Subsampling/test/test_choose_farthest_point.cpp diff --git a/src/Subsampling/include/gudhi/choose_by_farthest_point.h b/src/Subsampling/include/gudhi/choose_by_farthest_point.h index 61a21f44..9877d5eb 100644 --- a/src/Subsampling/include/gudhi/choose_by_farthest_point.h +++ b/src/Subsampling/include/gudhi/choose_by_farthest_point.h @@ -25,6 +25,8 @@ #include +#include + #include #include // for sort #include @@ -73,7 +75,7 @@ namespace Gudhi { for (current_number_of_landmarks = 0; current_number_of_landmarks != nbL; current_number_of_landmarks++) { // curr_max_w at this point is the next landmark *output_it++ = points[curr_max_w]; - std::cout << curr_max_w << "\n"; + // std::cout << curr_max_w << "\n"; unsigned i = 0; for (auto& p : points) { double curr_dist = sqdist(p, *(std::begin(points) + curr_max_w)); diff --git a/src/Subsampling/test/CMakeLists.txt b/src/Subsampling/test/CMakeLists.txt index 1785b86d..3a7fc092 100644 --- a/src/Subsampling/test/CMakeLists.txt +++ b/src/Subsampling/test/CMakeLists.txt @@ -1,6 +1,16 @@ cmake_minimum_required(VERSION 2.6) project(Subsampling_tests) +if (GCOVR_PATH) + # for gcovr to make coverage reports - Corbera Jenkins plugin + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage") +endif() +if (GPROF_PATH) + # for gprof to make coverage reports - Jenkins + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pg") +endif() + +# Landmarking test if(CGAL_FOUND) if (NOT CGAL_VERSION VERSION_LESS 4.8.0) message(STATUS "CGAL version: ${CGAL_VERSION}.") @@ -11,7 +21,9 @@ if(CGAL_FOUND) include( ${EIGEN3_USE_FILE} ) include_directories (BEFORE "../../include") - add_executable( landmarking_UT landmarking.cpp ) + add_executable( test_choose_farthest_point test_choose_farthest_point.cpp ) + target_link_libraries(test_choose_farthest_point ${Boost_SYSTEM_LIBRARY} ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}) + add_executable( Subsampling_test_sparsify_point_set test_sparsify_point_set.cpp) else() message(WARNING "Eigen3 not found. Version 3.1.0 is required for Subsampling feature.") diff --git a/src/Subsampling/test/test_choose_farthest_point.cpp b/src/Subsampling/test/test_choose_farthest_point.cpp new file mode 100644 index 00000000..2f83fac9 --- /dev/null +++ b/src/Subsampling/test/test_choose_farthest_point.cpp @@ -0,0 +1,35 @@ +// #ifdef _DEBUG +// # define TBB_USE_THREADING_TOOL +// #endif + +#define BOOST_TEST_DYN_LINK +#define BOOST_TEST_MODULE "witness_complex_points" +#include +#include + +#include +#include +#include + +#include + +typedef CGAL::Epick_d K; +typedef typename K::FT FT; +typedef typename K::Point_d Point_d; + + +BOOST_AUTO_TEST_CASE(test_choose_farthest_point) { + std::vector< Point_d > points, landmarks; + // Add grid points (625 points) + for (FT i = 0; i < 5; i += 1.0) + for (FT j = 0; j < 5; j += 1.0) + for (FT k = 0; k < 5; k += 1.0) + for (FT l = 0; l < 5; l += 1.0) + points.push_back(Point_d(std::vector({i, j, k, l}))); + + landmarks.clear(); + K k; + Gudhi::choose_by_farthest_point(k, points, 100, std::back_inserter(landmarks)); + + assert(landmarks.size() == 100); +} -- cgit v1.2.3