diff test/TestDistanceMetric.cpp @ 133:af69db43f5a4 refactors

Distance metric tests
author Chris Cannam
date Thu, 11 Dec 2014 14:09:54 +0000
parents 57cda698c225
children 7f6f150c1edf 6914a6a01ffc
line wrap: on
line diff
--- a/test/TestDistanceMetric.cpp	Thu Dec 11 13:55:54 2014 +0000
+++ b/test/TestDistanceMetric.cpp	Thu Dec 11 14:09:54 2014 +0000
@@ -33,6 +33,27 @@
 	e0 = getTestFeature(0);
 
     BOOST_CHECK_EQUAL(dm.calcDistance(e0, e0), 0.0);
+    BOOST_CHECK_EQUAL(dm.calcDistance(e1, e0), 6.0);
+    BOOST_CHECK_EQUAL(dm.calcDistance(e0, e1), 6.0);
+    BOOST_CHECK_EQUAL(dm.calcDistance(e1, e1), 0.0);
+    BOOST_CHECK_EQUAL(dm.calcDistance(e1, e2), 6.0);
+    BOOST_CHECK_EQUAL(dm.calcDistance(e0, e2), 12.0);
+}
+
+BOOST_AUTO_TEST_CASE(sum)
+{
+    DistanceMetric dm(DistanceMetric::NormaliseDistanceToSum);
+    vector<double>
+	e1 = getTestFeature(1),
+	e2 = getTestFeature(2),
+	e0 = getTestFeature(0);
+
+    BOOST_CHECK_EQUAL(dm.calcDistance(e0, e0), 0.0);
+    BOOST_CHECK_EQUAL(dm.calcDistance(e1, e0), 1.0);
+    BOOST_CHECK_EQUAL(dm.calcDistance(e0, e1), 1.0);
+    BOOST_CHECK_EQUAL(dm.calcDistance(e1, e1), 0.0);
+    BOOST_CHECK_EQUAL(dm.calcDistance(e1, e2), 1.0/3.0);
+    BOOST_CHECK_EQUAL(dm.calcDistance(e0, e2), 1.0);
 }
 
 BOOST_AUTO_TEST_SUITE_END()