unittest for Priority comparisons

This commit is contained in:
Robert Haschke 2018-04-27 11:34:24 +02:00 committed by Robert Haschke
parent 8fb47e99e8
commit 872e3cc004
2 changed files with 22 additions and 0 deletions

View File

@ -20,4 +20,7 @@ if (CATKIN_ENABLE_TESTING)
catkin_add_gtest(${PROJECT_NAME}-test-cost_queue test_cost_queue.cpp)
target_link_libraries(${PROJECT_NAME}-test-cost_queue ${PROJECT_NAME} gtest_main)
catkin_add_gtest(${PROJECT_NAME}-test-interface_state test_interface_state.cpp)
target_link_libraries(${PROJECT_NAME}-test-interface_state ${PROJECT_NAME} gtest_main)
endif()

View File

@ -0,0 +1,19 @@
#include <list>
#include <moveit/task_constructor/storage.h>
#include <gtest/gtest.h>
using namespace moveit::task_constructor;
TEST(InterfaceStatePriority, compare) {
typedef InterfaceState::Priority Prio;
const double inf = std::numeric_limits<double>::infinity();
EXPECT_TRUE(Prio(0, 0) == Prio(0, 0));
EXPECT_TRUE(Prio(0, inf) == Prio(0, inf));
EXPECT_TRUE(Prio(1, 0) < Prio(0, 0)); // higher depth is smaller
EXPECT_TRUE(Prio(1, inf) < Prio(0, inf));
EXPECT_TRUE(Prio(0, 0) < Prio(0, 1)); // higher cost is larger
EXPECT_TRUE(Prio(0, 0) < Prio(0, inf));
EXPECT_TRUE(Prio(0, inf) > Prio(0, 0));
}