[mlpack-svn] r15312 - mlpack/trunk/src/mlpack/tests

fastlab-svn at coffeetalk-1.cc.gatech.edu fastlab-svn at coffeetalk-1.cc.gatech.edu
Tue Jun 25 12:20:11 EDT 2013


Author: rcurtin
Date: 2013-06-25 12:20:10 -0400 (Tue, 25 Jun 2013)
New Revision: 15312

Modified:
   mlpack/trunk/src/mlpack/tests/allkrann_search_test.cpp
Log:
Test single-dataset mode.  In writing this test, bug #293 was created.


Modified: mlpack/trunk/src/mlpack/tests/allkrann_search_test.cpp
===================================================================
--- mlpack/trunk/src/mlpack/tests/allkrann_search_test.cpp	2013-06-25 16:19:47 UTC (rev 15311)
+++ mlpack/trunk/src/mlpack/tests/allkrann_search_test.cpp	2013-06-25 16:20:10 UTC (rev 15312)
@@ -265,4 +265,63 @@
   BOOST_REQUIRE(numQueriesFail < maxNumQueriesFail);
 }
 
+// Test rank-approximate search with just a single dataset.  These tests just
+// ensure that the method runs okay.
+BOOST_AUTO_TEST_CASE(AllkRANNSingleDatasetNaiveSearch)
+{
+  arma::mat dataset(5, 2500);
+  dataset.randn();
+
+  arma::Mat<size_t> neighbors;
+  arma::mat distances;
+
+  RASearch<> naive(dataset, true);
+
+  naive.Search(1, neighbors, distances);
+
+  BOOST_REQUIRE_EQUAL(neighbors.n_rows, 1);
+  BOOST_REQUIRE_EQUAL(neighbors.n_cols, 2500);
+  BOOST_REQUIRE_EQUAL(distances.n_rows, 1);
+  BOOST_REQUIRE_EQUAL(distances.n_cols, 2500);
+}
+
+// Test rank-approximate search with just a single dataset in single-tree mode.
+// These tests just ensure that the method runs okay.
+BOOST_AUTO_TEST_CASE(AllkRANNSingleDatasetSingleSearch)
+{
+  arma::mat dataset(5, 2500);
+  dataset.randn();
+
+  arma::Mat<size_t> neighbors;
+  arma::mat distances;
+
+  RASearch<> single(dataset, false, true);
+
+  single.Search(1, neighbors, distances);
+
+  BOOST_REQUIRE_EQUAL(neighbors.n_rows, 1);
+  BOOST_REQUIRE_EQUAL(neighbors.n_cols, 2500);
+  BOOST_REQUIRE_EQUAL(distances.n_rows, 1);
+  BOOST_REQUIRE_EQUAL(distances.n_cols, 2500);
+}
+
+// Test rank-approximate search with just a single dataset in dual-tree mode.
+// These tests just ensure that the method runs okay.
+BOOST_AUTO_TEST_CASE(AllkRANNSingleDatasetSearch)
+{
+  arma::mat dataset(5, 2500);
+  dataset.randn();
+
+  arma::Mat<size_t> neighbors;
+  arma::mat distances;
+
+  RASearch<> allkrann(dataset);
+  allkrann.Search(1, neighbors, distances);
+
+  BOOST_REQUIRE_EQUAL(neighbors.n_rows, 1);
+  BOOST_REQUIRE_EQUAL(neighbors.n_cols, 2500);
+  BOOST_REQUIRE_EQUAL(distances.n_rows, 1);
+  BOOST_REQUIRE_EQUAL(distances.n_cols, 2500);
+}
+
 BOOST_AUTO_TEST_SUITE_END();




More information about the mlpack-svn mailing list