summaryrefslogtreecommitdiff
path: root/src/Bottleneck_distance/test/bottleneck_unit_test.cpp
diff options
context:
space:
mode:
authorfgodi <fgodi@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2016-11-29 10:51:43 +0000
committerfgodi <fgodi@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2016-11-29 10:51:43 +0000
commit6d1bfe69ea473088eb2ca3ede626a2accaa58205 (patch)
treedc183212f260b71345fab4f9aeded26d225e2304 /src/Bottleneck_distance/test/bottleneck_unit_test.cpp
parent759b53891e1572df0ea0562828fcd88d8f8f3031 (diff)
better gestion of infinite points
git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/branches/bottleneck_integration@1798 636b058d-ea47-450e-bf9e-a15bfbe3eedb Former-commit-id: 28cca4bf35541a677fe08d5f0a8b89dfe9017962
Diffstat (limited to 'src/Bottleneck_distance/test/bottleneck_unit_test.cpp')
-rw-r--r--src/Bottleneck_distance/test/bottleneck_unit_test.cpp43
1 files changed, 22 insertions, 21 deletions
diff --git a/src/Bottleneck_distance/test/bottleneck_unit_test.cpp b/src/Bottleneck_distance/test/bottleneck_unit_test.cpp
index 84101274..2e67d436 100644
--- a/src/Bottleneck_distance/test/bottleneck_unit_test.cpp
+++ b/src/Bottleneck_distance/test/bottleneck_unit_test.cpp
@@ -70,25 +70,25 @@ BOOST_AUTO_TEST_CASE(persistence_graph){
//
BOOST_CHECK(g.size()==(n1+n2));
//
- BOOST_CHECK((int) d.size() <= (n1+n2)*(n1+n2) - n1*n2 + 2);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,0))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,n1-1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,n1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,n2-1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,n2))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,(n1+n2)-1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,0))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,n1-1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,n1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,n2-1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,n2))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,(n1+n2)-1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,0))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,n1-1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,n1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,n2-1))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,n2))==1);
- BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,(n1+n2)-1))==1);
+ BOOST_CHECK((int) d.size() == (n1+n2)*(n1+n2) + n1 + n2 + 1);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,0))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,n1-1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,n1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,n2-1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,n2))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(0,(n1+n2)-1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,0))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,n1-1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,n1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,n2-1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,n2))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance(n1,(n1+n2)-1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,0))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,n1-1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,n1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,n2-1))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,n2))>0);
+ BOOST_CHECK(std::count(d.begin(), d.end(), g.distance((n1+n2)-1,(n1+n2)-1))>0);
}
BOOST_AUTO_TEST_CASE(neighbors_finder) {
@@ -146,7 +146,7 @@ BOOST_AUTO_TEST_CASE(graph_matching) {
BOOST_AUTO_TEST_CASE(global){
std::uniform_real_distribution<double> unif1(0.,upper_bound);
- std::uniform_real_distribution<double> unif2(upper_bound/1000.,upper_bound/100.);
+ std::uniform_real_distribution<double> unif2(upper_bound/10000.,upper_bound/100.);
std::default_random_engine re;
std::vector< std::pair<double, double> > v1, v2;
for (int i = 0; i < n1; i++) {
@@ -162,5 +162,6 @@ BOOST_AUTO_TEST_CASE(global){
v2.emplace_back(std::max(a,b),std::max(a,b)+y);
}
BOOST_CHECK(compute(v1, v2) <= upper_bound/100.);
- BOOST_CHECK(compute(v1, v2, upper_bound/1000.) <= upper_bound/100. + upper_bound/1000.);
+ BOOST_CHECK(compute(v1, v2, upper_bound/10000.) <= upper_bound/100. + upper_bound/10000.);
+ BOOST_CHECK(std::abs(compute(v1, v2) - compute(v1, v2, upper_bound/10000.)) <= upper_bound/10000.);
}