full_planner_test.cpp
Go to the documentation of this file.
00001 
00002 /*
00003  * Software License Agreement (BSD License)
00004  *
00005  *  Copyright (c) 2018, Locus Robotics
00006  *  All rights reserved.
00007  *
00008  *  Redistribution and use in source and binary forms, with or without
00009  *  modification, are permitted provided that the following conditions
00010  *  are met:
00011  *
00012  *   * Redistributions of source code must retain the above copyright
00013  *     notice, this list of conditions and the following disclaimer.
00014  *   * Redistributions in binary form must reproduce the above
00015  *     copyright notice, this list of conditions and the following
00016  *     disclaimer in the documentation and/or other materials provided
00017  *     with the distribution.
00018  *   * Neither the name of the copyright holder nor the names of its
00019  *     contributors may be used to endorse or promote products derived
00020  *     from this software without specific prior written permission.
00021  *
00022  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
00023  *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
00024  *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
00025  *  FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
00026  *  COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
00027  *  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
00028  *  BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
00029  *  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
00030  *  CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
00031  *  LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
00032  *  ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
00033  *  POSSIBILITY OF SUCH DAMAGE.
00034  */
00035 #include <global_planner_tests/many_map_test_suite.h>
00036 #include <dlux_global_planner/dlux_global_planner.h>
00037 #include <ros/ros.h>
00038 #include <gtest/gtest.h>
00039 #include <string>
00040 
00041 using global_planner_tests::many_map_test_suite;
00042 using dlux_global_planner::DluxGlobalPlanner;
00043 
00044 
00045 TEST(GlobalPlanner, DijkstraVonNeumann)
00046 {
00047   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00048   DluxGlobalPlanner planner;
00049   std::string ns = "DijkstraVonNeumann";
00050 
00051   ros::NodeHandle nh("~/" + ns);
00052   nh.setParam("planner/potential_calculator", "dlux_plugins::Dijkstra");
00053   nh.setParam("planner/traceback", "dlux_plugins::VonNeumannPath");
00054   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00055 }
00056 
00057 
00058 TEST(GlobalPlanner, DijkstraGrid)
00059 {
00060   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00061   DluxGlobalPlanner planner;
00062   std::string ns = "DijkstraGrid";
00063 
00064   ros::NodeHandle nh("~/" + ns);
00065   nh.setParam("planner/potential_calculator", "dlux_plugins::Dijkstra");
00066   nh.setParam("planner/traceback", "dlux_plugins::GridPath");
00067   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00068 }
00069 
00070 
00071 TEST(GlobalPlanner, DijkstraGradientStep)
00072 {
00073   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00074   DluxGlobalPlanner planner;
00075   std::string ns = "DijkstraGradientStep";
00076 
00077   ros::NodeHandle nh("~/" + ns);
00078   nh.setParam("planner/potential_calculator", "dlux_plugins::Dijkstra");
00079   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00080   nh.setParam("planner/grid_step_near_high", true);
00081   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00082 }
00083 
00084 
00085 TEST(GlobalPlanner, DijkstraGradient)
00086 {
00087   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00088   DluxGlobalPlanner planner;
00089   std::string ns = "DijkstraGradient";
00090 
00091   ros::NodeHandle nh("~/" + ns);
00092   nh.setParam("planner/potential_calculator", "dlux_plugins::Dijkstra");
00093   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00094   nh.setParam("planner/grid_step_near_high", false);
00095   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00096 }
00097 
00098 
00099 TEST(GlobalPlanner, AStarVonNeumannManK)
00100 {
00101   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00102   DluxGlobalPlanner planner;
00103   std::string ns = "AStarVonNeumannManK";
00104 
00105   ros::NodeHandle nh("~/" + ns);
00106   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00107   nh.setParam("planner/traceback", "dlux_plugins::VonNeumannPath");
00108   nh.setParam("planner/minimum_requeue_change", 0.0);
00109   nh.setParam("planner/use_kernel", true);
00110   nh.setParam("planner/manhattan_heuristic", true);
00111   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00112 }
00113 
00114 
00115 TEST(GlobalPlanner, AStarVonNeumannK)
00116 {
00117   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00118   DluxGlobalPlanner planner;
00119   std::string ns = "AStarVonNeumannK";
00120 
00121   ros::NodeHandle nh("~/" + ns);
00122   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00123   nh.setParam("planner/traceback", "dlux_plugins::VonNeumannPath");
00124   nh.setParam("planner/minimum_requeue_change", 0.0);
00125   nh.setParam("planner/use_kernel", true);
00126   nh.setParam("planner/manhattan_heuristic", false);
00127   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00128 }
00129 
00130 
00131 TEST(GlobalPlanner, AStarVonNeumannMan)
00132 {
00133   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00134   DluxGlobalPlanner planner;
00135   std::string ns = "AStarVonNeumannMan";
00136 
00137   ros::NodeHandle nh("~/" + ns);
00138   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00139   nh.setParam("planner/traceback", "dlux_plugins::VonNeumannPath");
00140   nh.setParam("planner/minimum_requeue_change", 0.0);
00141   nh.setParam("planner/use_kernel", false);
00142   nh.setParam("planner/manhattan_heuristic", true);
00143   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00144 }
00145 
00146 
00147 TEST(GlobalPlanner, AStarVonNeumann)
00148 {
00149   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00150   DluxGlobalPlanner planner;
00151   std::string ns = "AStarVonNeumann";
00152 
00153   ros::NodeHandle nh("~/" + ns);
00154   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00155   nh.setParam("planner/traceback", "dlux_plugins::VonNeumannPath");
00156   nh.setParam("planner/minimum_requeue_change", 0.0);
00157   nh.setParam("planner/use_kernel", false);
00158   nh.setParam("planner/manhattan_heuristic", false);
00159   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00160 }
00161 
00162 
00163 TEST(GlobalPlanner, AStarVonNeumannManThreshK)
00164 {
00165   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00166   DluxGlobalPlanner planner;
00167   std::string ns = "AStarVonNeumannManThreshK";
00168 
00169   ros::NodeHandle nh("~/" + ns);
00170   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00171   nh.setParam("planner/traceback", "dlux_plugins::VonNeumannPath");
00172   nh.setParam("planner/minimum_requeue_change", 1.0);
00173   nh.setParam("planner/use_kernel", true);
00174   nh.setParam("planner/manhattan_heuristic", true);
00175   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00176 }
00177 
00178 
00179 TEST(GlobalPlanner, AStarVonNeumannThreshK)
00180 {
00181   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00182   DluxGlobalPlanner planner;
00183   std::string ns = "AStarVonNeumannThreshK";
00184 
00185   ros::NodeHandle nh("~/" + ns);
00186   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00187   nh.setParam("planner/traceback", "dlux_plugins::VonNeumannPath");
00188   nh.setParam("planner/minimum_requeue_change", 1.0);
00189   nh.setParam("planner/use_kernel", true);
00190   nh.setParam("planner/manhattan_heuristic", false);
00191   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00192 }
00193 
00194 
00195 TEST(GlobalPlanner, AStarVonNeumannManThresh)
00196 {
00197   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00198   DluxGlobalPlanner planner;
00199   std::string ns = "AStarVonNeumannManThresh";
00200 
00201   ros::NodeHandle nh("~/" + ns);
00202   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00203   nh.setParam("planner/traceback", "dlux_plugins::VonNeumannPath");
00204   nh.setParam("planner/minimum_requeue_change", 1.0);
00205   nh.setParam("planner/use_kernel", false);
00206   nh.setParam("planner/manhattan_heuristic", true);
00207   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00208 }
00209 
00210 
00211 TEST(GlobalPlanner, AStarVonNeumannThresh)
00212 {
00213   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00214   DluxGlobalPlanner planner;
00215   std::string ns = "AStarVonNeumannThresh";
00216 
00217   ros::NodeHandle nh("~/" + ns);
00218   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00219   nh.setParam("planner/traceback", "dlux_plugins::VonNeumannPath");
00220   nh.setParam("planner/minimum_requeue_change", 1.0);
00221   nh.setParam("planner/use_kernel", false);
00222   nh.setParam("planner/manhattan_heuristic", false);
00223   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00224 }
00225 
00226 
00227 TEST(GlobalPlanner, AStarGridManK)
00228 {
00229   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00230   DluxGlobalPlanner planner;
00231   std::string ns = "AStarGridManK";
00232 
00233   ros::NodeHandle nh("~/" + ns);
00234   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00235   nh.setParam("planner/traceback", "dlux_plugins::GridPath");
00236   nh.setParam("planner/minimum_requeue_change", 0.0);
00237   nh.setParam("planner/use_kernel", true);
00238   nh.setParam("planner/manhattan_heuristic", true);
00239   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00240 }
00241 
00242 
00243 TEST(GlobalPlanner, AStarGridK)
00244 {
00245   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00246   DluxGlobalPlanner planner;
00247   std::string ns = "AStarGridK";
00248 
00249   ros::NodeHandle nh("~/" + ns);
00250   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00251   nh.setParam("planner/traceback", "dlux_plugins::GridPath");
00252   nh.setParam("planner/minimum_requeue_change", 0.0);
00253   nh.setParam("planner/use_kernel", true);
00254   nh.setParam("planner/manhattan_heuristic", false);
00255   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00256 }
00257 
00258 
00259 TEST(GlobalPlanner, AStarGridMan)
00260 {
00261   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00262   DluxGlobalPlanner planner;
00263   std::string ns = "AStarGridMan";
00264 
00265   ros::NodeHandle nh("~/" + ns);
00266   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00267   nh.setParam("planner/traceback", "dlux_plugins::GridPath");
00268   nh.setParam("planner/minimum_requeue_change", 0.0);
00269   nh.setParam("planner/use_kernel", false);
00270   nh.setParam("planner/manhattan_heuristic", true);
00271   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00272 }
00273 
00274 
00275 TEST(GlobalPlanner, AStarGrid)
00276 {
00277   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00278   DluxGlobalPlanner planner;
00279   std::string ns = "AStarGrid";
00280 
00281   ros::NodeHandle nh("~/" + ns);
00282   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00283   nh.setParam("planner/traceback", "dlux_plugins::GridPath");
00284   nh.setParam("planner/minimum_requeue_change", 0.0);
00285   nh.setParam("planner/use_kernel", false);
00286   nh.setParam("planner/manhattan_heuristic", false);
00287   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00288 }
00289 
00290 
00291 TEST(GlobalPlanner, AStarGridManThreshK)
00292 {
00293   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00294   DluxGlobalPlanner planner;
00295   std::string ns = "AStarGridManThreshK";
00296 
00297   ros::NodeHandle nh("~/" + ns);
00298   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00299   nh.setParam("planner/traceback", "dlux_plugins::GridPath");
00300   nh.setParam("planner/minimum_requeue_change", 1.0);
00301   nh.setParam("planner/use_kernel", true);
00302   nh.setParam("planner/manhattan_heuristic", true);
00303   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00304 }
00305 
00306 
00307 TEST(GlobalPlanner, AStarGridThreshK)
00308 {
00309   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00310   DluxGlobalPlanner planner;
00311   std::string ns = "AStarGridThreshK";
00312 
00313   ros::NodeHandle nh("~/" + ns);
00314   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00315   nh.setParam("planner/traceback", "dlux_plugins::GridPath");
00316   nh.setParam("planner/minimum_requeue_change", 1.0);
00317   nh.setParam("planner/use_kernel", true);
00318   nh.setParam("planner/manhattan_heuristic", false);
00319   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00320 }
00321 
00322 
00323 TEST(GlobalPlanner, AStarGridManThresh)
00324 {
00325   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00326   DluxGlobalPlanner planner;
00327   std::string ns = "AStarGridManThresh";
00328 
00329   ros::NodeHandle nh("~/" + ns);
00330   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00331   nh.setParam("planner/traceback", "dlux_plugins::GridPath");
00332   nh.setParam("planner/minimum_requeue_change", 1.0);
00333   nh.setParam("planner/use_kernel", false);
00334   nh.setParam("planner/manhattan_heuristic", true);
00335   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00336 }
00337 
00338 
00339 TEST(GlobalPlanner, AStarGridThresh)
00340 {
00341   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00342   DluxGlobalPlanner planner;
00343   std::string ns = "AStarGridThresh";
00344 
00345   ros::NodeHandle nh("~/" + ns);
00346   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00347   nh.setParam("planner/traceback", "dlux_plugins::GridPath");
00348   nh.setParam("planner/minimum_requeue_change", 1.0);
00349   nh.setParam("planner/use_kernel", false);
00350   nh.setParam("planner/manhattan_heuristic", false);
00351   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00352 }
00353 
00354 
00355 TEST(GlobalPlanner, AStarGradientStepManK)
00356 {
00357   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00358   DluxGlobalPlanner planner;
00359   std::string ns = "AStarGradientStepManK";
00360 
00361   ros::NodeHandle nh("~/" + ns);
00362   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00363   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00364   nh.setParam("planner/minimum_requeue_change", 0.0);
00365   nh.setParam("planner/use_kernel", true);
00366   nh.setParam("planner/manhattan_heuristic", true);
00367   nh.setParam("planner/grid_step_near_high", true);
00368   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00369 }
00370 
00371 
00372 TEST(GlobalPlanner, AStarGradientManK)
00373 {
00374   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00375   DluxGlobalPlanner planner;
00376   std::string ns = "AStarGradientManK";
00377 
00378   ros::NodeHandle nh("~/" + ns);
00379   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00380   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00381   nh.setParam("planner/minimum_requeue_change", 0.0);
00382   nh.setParam("planner/use_kernel", true);
00383   nh.setParam("planner/manhattan_heuristic", true);
00384   nh.setParam("planner/grid_step_near_high", false);
00385   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00386 }
00387 
00388 
00389 TEST(GlobalPlanner, AStarGradientStepK)
00390 {
00391   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00392   DluxGlobalPlanner planner;
00393   std::string ns = "AStarGradientStepK";
00394 
00395   ros::NodeHandle nh("~/" + ns);
00396   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00397   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00398   nh.setParam("planner/minimum_requeue_change", 0.0);
00399   nh.setParam("planner/use_kernel", true);
00400   nh.setParam("planner/manhattan_heuristic", false);
00401   nh.setParam("planner/grid_step_near_high", true);
00402   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00403 }
00404 
00405 
00406 TEST(GlobalPlanner, AStarGradientK)
00407 {
00408   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00409   DluxGlobalPlanner planner;
00410   std::string ns = "AStarGradientK";
00411 
00412   ros::NodeHandle nh("~/" + ns);
00413   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00414   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00415   nh.setParam("planner/minimum_requeue_change", 0.0);
00416   nh.setParam("planner/use_kernel", true);
00417   nh.setParam("planner/manhattan_heuristic", false);
00418   nh.setParam("planner/grid_step_near_high", false);
00419   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00420 }
00421 
00422 
00423 TEST(GlobalPlanner, AStarGradientStepMan)
00424 {
00425   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00426   DluxGlobalPlanner planner;
00427   std::string ns = "AStarGradientStepMan";
00428 
00429   ros::NodeHandle nh("~/" + ns);
00430   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00431   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00432   nh.setParam("planner/minimum_requeue_change", 0.0);
00433   nh.setParam("planner/use_kernel", false);
00434   nh.setParam("planner/manhattan_heuristic", true);
00435   nh.setParam("planner/grid_step_near_high", true);
00436   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00437 }
00438 
00439 
00440 TEST(GlobalPlanner, AStarGradientMan)
00441 {
00442   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00443   DluxGlobalPlanner planner;
00444   std::string ns = "AStarGradientMan";
00445 
00446   ros::NodeHandle nh("~/" + ns);
00447   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00448   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00449   nh.setParam("planner/minimum_requeue_change", 0.0);
00450   nh.setParam("planner/use_kernel", false);
00451   nh.setParam("planner/manhattan_heuristic", true);
00452   nh.setParam("planner/grid_step_near_high", false);
00453   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00454 }
00455 
00456 
00457 TEST(GlobalPlanner, AStarGradientStep)
00458 {
00459   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00460   DluxGlobalPlanner planner;
00461   std::string ns = "AStarGradientStep";
00462 
00463   ros::NodeHandle nh("~/" + ns);
00464   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00465   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00466   nh.setParam("planner/minimum_requeue_change", 0.0);
00467   nh.setParam("planner/use_kernel", false);
00468   nh.setParam("planner/manhattan_heuristic", false);
00469   nh.setParam("planner/grid_step_near_high", true);
00470   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00471 }
00472 
00473 
00474 TEST(GlobalPlanner, AStarGradient)
00475 {
00476   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00477   DluxGlobalPlanner planner;
00478   std::string ns = "AStarGradient";
00479 
00480   ros::NodeHandle nh("~/" + ns);
00481   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00482   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00483   nh.setParam("planner/minimum_requeue_change", 0.0);
00484   nh.setParam("planner/use_kernel", false);
00485   nh.setParam("planner/manhattan_heuristic", false);
00486   nh.setParam("planner/grid_step_near_high", false);
00487   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00488 }
00489 
00490 
00491 TEST(GlobalPlanner, AStarGradientStepManThreshK)
00492 {
00493   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00494   DluxGlobalPlanner planner;
00495   std::string ns = "AStarGradientStepManThreshK";
00496 
00497   ros::NodeHandle nh("~/" + ns);
00498   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00499   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00500   nh.setParam("planner/minimum_requeue_change", 1.0);
00501   nh.setParam("planner/use_kernel", true);
00502   nh.setParam("planner/manhattan_heuristic", true);
00503   nh.setParam("planner/grid_step_near_high", true);
00504   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00505 }
00506 
00507 
00508 TEST(GlobalPlanner, AStarGradientManThreshK)
00509 {
00510   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00511   DluxGlobalPlanner planner;
00512   std::string ns = "AStarGradientManThreshK";
00513 
00514   ros::NodeHandle nh("~/" + ns);
00515   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00516   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00517   nh.setParam("planner/minimum_requeue_change", 1.0);
00518   nh.setParam("planner/use_kernel", true);
00519   nh.setParam("planner/manhattan_heuristic", true);
00520   nh.setParam("planner/grid_step_near_high", false);
00521   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00522 }
00523 
00524 
00525 TEST(GlobalPlanner, AStarGradientStepThreshK)
00526 {
00527   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00528   DluxGlobalPlanner planner;
00529   std::string ns = "AStarGradientStepThreshK";
00530 
00531   ros::NodeHandle nh("~/" + ns);
00532   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00533   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00534   nh.setParam("planner/minimum_requeue_change", 1.0);
00535   nh.setParam("planner/use_kernel", true);
00536   nh.setParam("planner/manhattan_heuristic", false);
00537   nh.setParam("planner/grid_step_near_high", true);
00538   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00539 }
00540 
00541 
00542 TEST(GlobalPlanner, AStarGradientThreshK)
00543 {
00544   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00545   DluxGlobalPlanner planner;
00546   std::string ns = "AStarGradientThreshK";
00547 
00548   ros::NodeHandle nh("~/" + ns);
00549   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00550   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00551   nh.setParam("planner/minimum_requeue_change", 1.0);
00552   nh.setParam("planner/use_kernel", true);
00553   nh.setParam("planner/manhattan_heuristic", false);
00554   nh.setParam("planner/grid_step_near_high", false);
00555   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00556 }
00557 
00558 
00559 TEST(GlobalPlanner, AStarGradientStepManThresh)
00560 {
00561   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00562   DluxGlobalPlanner planner;
00563   std::string ns = "AStarGradientStepManThresh";
00564 
00565   ros::NodeHandle nh("~/" + ns);
00566   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00567   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00568   nh.setParam("planner/minimum_requeue_change", 1.0);
00569   nh.setParam("planner/use_kernel", false);
00570   nh.setParam("planner/manhattan_heuristic", true);
00571   nh.setParam("planner/grid_step_near_high", true);
00572   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00573 }
00574 
00575 
00576 TEST(GlobalPlanner, AStarGradientManThresh)
00577 {
00578   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00579   DluxGlobalPlanner planner;
00580   std::string ns = "AStarGradientManThresh";
00581 
00582   ros::NodeHandle nh("~/" + ns);
00583   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00584   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00585   nh.setParam("planner/minimum_requeue_change", 1.0);
00586   nh.setParam("planner/use_kernel", false);
00587   nh.setParam("planner/manhattan_heuristic", true);
00588   nh.setParam("planner/grid_step_near_high", false);
00589   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00590 }
00591 
00592 
00593 TEST(GlobalPlanner, AStarGradientStepThresh)
00594 {
00595   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00596   DluxGlobalPlanner planner;
00597   std::string ns = "AStarGradientStepThresh";
00598 
00599   ros::NodeHandle nh("~/" + ns);
00600   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00601   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00602   nh.setParam("planner/minimum_requeue_change", 1.0);
00603   nh.setParam("planner/use_kernel", false);
00604   nh.setParam("planner/manhattan_heuristic", false);
00605   nh.setParam("planner/grid_step_near_high", true);
00606   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00607 }
00608 
00609 
00610 TEST(GlobalPlanner, AStarGradientThresh)
00611 {
00612   TFListenerPtr tf = std::make_shared<tf::TransformListener>(ros::Duration(10));
00613   DluxGlobalPlanner planner;
00614   std::string ns = "AStarGradientThresh";
00615 
00616   ros::NodeHandle nh("~/" + ns);
00617   nh.setParam("planner/potential_calculator", "dlux_plugins::AStar");
00618   nh.setParam("planner/traceback", "dlux_plugins::GradientPath");
00619   nh.setParam("planner/minimum_requeue_change", 1.0);
00620   nh.setParam("planner/use_kernel", false);
00621   nh.setParam("planner/manhattan_heuristic", false);
00622   nh.setParam("planner/grid_step_near_high", false);
00623   EXPECT_TRUE(many_map_test_suite(planner, tf, ns));
00624 }
00625 
00626 
00627 int main(int argc, char **argv)
00628 {
00629   ros::init(argc, argv, "planner_tests");
00630   testing::InitGoogleTest(&argc, argv);
00631   return RUN_ALL_TESTS();
00632 }


dlux_plugins
Author(s):
autogenerated on Wed Jun 26 2019 20:09:55