Add boost python, and predictor wrapper
[trackerpp.git] / test / TestHungarian.cpp
index f20ec09..3d6173f 100644 (file)
@@ -1,5 +1,6 @@
 #include "hungarian.h"
 #include "gtest/gtest.h"
+#include <cmath>
 
 using namespace std;
 using namespace Eigen;
@@ -44,3 +45,36 @@ TEST(Hungarian, 4x3)
     EXPECT_TRUE(expect_row_ind == row_ind);
     EXPECT_TRUE(expect_col_ind == col_ind);
 }
+
+TEST(Distance, consine)
+{
+    Vector3d u, v;
+    u << 1, 0, 0;
+    v << 0, 1, 0;
+    double d = distance_cosine(u, v);
+    EXPECT_DOUBLE_EQ(d, 1.0);
+
+    u << 100, 0, 0;
+    v << 0, 1, 0;
+    d = distance_cosine(u, v);
+    EXPECT_DOUBLE_EQ(d, 1.0);
+
+    u << 1, 1, 0;
+    v << 0, 1, 0;
+    d = distance_cosine(u, v);
+    EXPECT_TRUE(std::abs(d - 0.2928932) < 0.0001);
+}
+
+TEST(Distance, euclidean)
+{
+    Vector3d u, v;
+    u << 1, 0, 0;
+    v << 0, 1, 0;
+    double d = distance_euclidean(u, v);
+    EXPECT_TRUE(std::abs(d - 1.41421356) < 0.0001);
+
+    u << 1, 1, 0;
+    v << 0, 1, 0;
+    d = distance_euclidean(u, v);
+    EXPECT_DOUBLE_EQ(d, 1.0);
+}