remove mock msgs from rclcpp (#800)
Signed-off-by: Karsten Knese <karsten@openrobotics.org>
This commit is contained in:
parent
9be3e08cd4
commit
dc3c36c7f0
3 changed files with 21 additions and 46 deletions
|
@ -143,6 +143,8 @@ if(BUILD_TESTING)
|
||||||
|
|
||||||
find_package(rmw_implementation_cmake REQUIRED)
|
find_package(rmw_implementation_cmake REQUIRED)
|
||||||
|
|
||||||
|
find_package(test_msgs REQUIRED)
|
||||||
|
|
||||||
include(cmake/rclcpp_add_build_failure_test.cmake)
|
include(cmake/rclcpp_add_build_failure_test.cmake)
|
||||||
|
|
||||||
ament_add_gtest(test_client test/test_client.cpp)
|
ament_add_gtest(test_client test/test_client.cpp)
|
||||||
|
@ -356,7 +358,6 @@ if(BUILD_TESTING)
|
||||||
)
|
)
|
||||||
target_link_libraries(test_subscription_publisher_count_api ${PROJECT_NAME})
|
target_link_libraries(test_subscription_publisher_count_api ${PROJECT_NAME})
|
||||||
endif()
|
endif()
|
||||||
find_package(test_msgs REQUIRED)
|
|
||||||
ament_add_gtest(test_subscription_traits test/test_subscription_traits.cpp)
|
ament_add_gtest(test_subscription_traits test/test_subscription_traits.cpp)
|
||||||
if(TARGET test_subscription_traits)
|
if(TARGET test_subscription_traits)
|
||||||
ament_target_dependencies(test_subscription_traits
|
ament_target_dependencies(test_subscription_traits
|
||||||
|
@ -372,38 +373,17 @@ if(BUILD_TESTING)
|
||||||
target_link_libraries(test_find_weak_nodes ${PROJECT_NAME})
|
target_link_libraries(test_find_weak_nodes ${PROJECT_NAME})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
get_default_rmw_implementation(default_rmw)
|
|
||||||
find_package(${default_rmw} REQUIRED)
|
|
||||||
get_rmw_typesupport(typesupport_impls_cpp "${default_rmw}" LANGUAGE "cpp")
|
|
||||||
get_rmw_typesupport(typesupport_impls_c "${default_rmw}" LANGUAGE "c")
|
|
||||||
set(mock_msg_files
|
|
||||||
"test/mock_msgs/srv/Mock.srv")
|
|
||||||
rosidl_generate_interfaces(mock_msgs
|
|
||||||
${mock_msg_files}
|
|
||||||
LIBRARY_NAME "rclcpp"
|
|
||||||
SKIP_INSTALL)
|
|
||||||
|
|
||||||
set(append_library_dirs "${CMAKE_CURRENT_BINARY_DIR}")
|
set(append_library_dirs "${CMAKE_CURRENT_BINARY_DIR}")
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(append_library_dirs "${append_library_dirs}/$<CONFIG>")
|
set(append_library_dirs "${append_library_dirs}/$<CONFIG>")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
ament_add_gtest(test_externally_defined_services test/test_externally_defined_services.cpp
|
ament_add_gtest(test_externally_defined_services test/test_externally_defined_services.cpp)
|
||||||
APPEND_LIBRARY_DIRS "${append_library_dirs}")
|
ament_target_dependencies(test_externally_defined_services
|
||||||
if(TARGET test_externally_defined_services)
|
"rcl"
|
||||||
ament_target_dependencies(test_externally_defined_services
|
"test_msgs"
|
||||||
"rcl"
|
)
|
||||||
)
|
target_link_libraries(test_externally_defined_services ${PROJECT_NAME})
|
||||||
target_link_libraries(test_externally_defined_services ${PROJECT_NAME})
|
|
||||||
foreach(typesupport_impl_cpp ${typesupport_impls_cpp})
|
|
||||||
rosidl_target_interfaces(test_externally_defined_services
|
|
||||||
mock_msgs ${typesupport_impl_cpp})
|
|
||||||
endforeach()
|
|
||||||
foreach(typesupport_impl_c ${typesupport_impls_c})
|
|
||||||
rosidl_target_interfaces(test_externally_defined_services
|
|
||||||
mock_msgs ${typesupport_impl_c})
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
ament_add_gtest(test_duration test/test_duration.cpp
|
ament_add_gtest(test_duration test/test_duration.cpp
|
||||||
APPEND_LIBRARY_DIRS "${append_library_dirs}")
|
APPEND_LIBRARY_DIRS "${append_library_dirs}")
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
bool request
|
|
||||||
---
|
|
||||||
bool response
|
|
|
@ -24,8 +24,8 @@
|
||||||
|
|
||||||
#include "rcl/service.h"
|
#include "rcl/service.h"
|
||||||
|
|
||||||
#include "rclcpp/srv/mock.hpp"
|
#include "test_msgs/srv/empty.hpp"
|
||||||
#include "rclcpp/srv/mock.h"
|
#include "test_msgs/srv/empty.h"
|
||||||
|
|
||||||
class TestExternallyDefinedServices : public ::testing::Test
|
class TestExternallyDefinedServices : public ::testing::Test
|
||||||
{
|
{
|
||||||
|
@ -38,16 +38,15 @@ protected:
|
||||||
|
|
||||||
void
|
void
|
||||||
callback(
|
callback(
|
||||||
const std::shared_ptr<rclcpp::srv::Mock::Request>/*req*/,
|
const std::shared_ptr<test_msgs::srv::Empty::Request>/*req*/,
|
||||||
std::shared_ptr<rclcpp::srv::Mock::Response>/*resp*/)
|
std::shared_ptr<test_msgs::srv::Empty::Response>/*resp*/)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
TEST_F(TestExternallyDefinedServices, default_behavior) {
|
TEST_F(TestExternallyDefinedServices, default_behavior) {
|
||||||
auto node_handle = rclcpp::Node::make_shared("base_node");
|
auto node_handle = rclcpp::Node::make_shared("base_node");
|
||||||
|
|
||||||
try {
|
try {
|
||||||
auto srv = node_handle->create_service<rclcpp::srv::Mock>("test",
|
auto srv = node_handle->create_service<test_msgs::srv::Empty>("test", callback);
|
||||||
callback);
|
|
||||||
} catch (const std::exception &) {
|
} catch (const std::exception &) {
|
||||||
FAIL();
|
FAIL();
|
||||||
return;
|
return;
|
||||||
|
@ -55,19 +54,18 @@ TEST_F(TestExternallyDefinedServices, default_behavior) {
|
||||||
SUCCEED();
|
SUCCEED();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TEST_F(TestExternallyDefinedServices, extern_defined_uninitialized) {
|
TEST_F(TestExternallyDefinedServices, extern_defined_uninitialized) {
|
||||||
auto node_handle = rclcpp::Node::make_shared("base_node");
|
auto node_handle = rclcpp::Node::make_shared("base_node");
|
||||||
|
|
||||||
// mock for externally defined service
|
// mock for externally defined service
|
||||||
rcl_service_t service_handle = rcl_get_zero_initialized_service();
|
rcl_service_t service_handle = rcl_get_zero_initialized_service();
|
||||||
|
|
||||||
rclcpp::AnyServiceCallback<rclcpp::srv::Mock> cb;
|
rclcpp::AnyServiceCallback<test_msgs::srv::Empty> cb;
|
||||||
|
|
||||||
// don't initialize the service
|
// don't initialize the service
|
||||||
// expect fail
|
// expect fail
|
||||||
try {
|
try {
|
||||||
rclcpp::Service<rclcpp::srv::Mock>(
|
rclcpp::Service<test_msgs::srv::Empty>(
|
||||||
node_handle->get_node_base_interface()->get_shared_rcl_node_handle(),
|
node_handle->get_node_base_interface()->get_shared_rcl_node_handle(),
|
||||||
&service_handle, cb);
|
&service_handle, cb);
|
||||||
} catch (const std::runtime_error &) {
|
} catch (const std::runtime_error &) {
|
||||||
|
@ -85,7 +83,7 @@ TEST_F(TestExternallyDefinedServices, extern_defined_initialized) {
|
||||||
rcl_service_t service_handle = rcl_get_zero_initialized_service();
|
rcl_service_t service_handle = rcl_get_zero_initialized_service();
|
||||||
rcl_service_options_t service_options = rcl_service_get_default_options();
|
rcl_service_options_t service_options = rcl_service_get_default_options();
|
||||||
const rosidl_service_type_support_t * ts =
|
const rosidl_service_type_support_t * ts =
|
||||||
rosidl_typesupport_cpp::get_service_type_support_handle<rclcpp::srv::Mock>();
|
rosidl_typesupport_cpp::get_service_type_support_handle<test_msgs::srv::Empty>();
|
||||||
rcl_ret_t ret = rcl_service_init(
|
rcl_ret_t ret = rcl_service_init(
|
||||||
&service_handle,
|
&service_handle,
|
||||||
node_handle->get_node_base_interface()->get_rcl_node_handle(),
|
node_handle->get_node_base_interface()->get_rcl_node_handle(),
|
||||||
|
@ -95,10 +93,10 @@ TEST_F(TestExternallyDefinedServices, extern_defined_initialized) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
rclcpp::AnyServiceCallback<rclcpp::srv::Mock> cb;
|
rclcpp::AnyServiceCallback<test_msgs::srv::Empty> cb;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
rclcpp::Service<rclcpp::srv::Mock>(
|
rclcpp::Service<test_msgs::srv::Empty>(
|
||||||
node_handle->get_node_base_interface()->get_shared_rcl_node_handle(),
|
node_handle->get_node_base_interface()->get_shared_rcl_node_handle(),
|
||||||
&service_handle, cb);
|
&service_handle, cb);
|
||||||
} catch (const std::runtime_error &) {
|
} catch (const std::runtime_error &) {
|
||||||
|
@ -125,7 +123,7 @@ TEST_F(TestExternallyDefinedServices, extern_defined_destructor) {
|
||||||
rcl_service_t service_handle = rcl_get_zero_initialized_service();
|
rcl_service_t service_handle = rcl_get_zero_initialized_service();
|
||||||
rcl_service_options_t service_options = rcl_service_get_default_options();
|
rcl_service_options_t service_options = rcl_service_get_default_options();
|
||||||
const rosidl_service_type_support_t * ts =
|
const rosidl_service_type_support_t * ts =
|
||||||
rosidl_typesupport_cpp::get_service_type_support_handle<rclcpp::srv::Mock>();
|
rosidl_typesupport_cpp::get_service_type_support_handle<test_msgs::srv::Empty>();
|
||||||
rcl_ret_t ret = rcl_service_init(
|
rcl_ret_t ret = rcl_service_init(
|
||||||
&service_handle,
|
&service_handle,
|
||||||
node_handle->get_node_base_interface()->get_rcl_node_handle(),
|
node_handle->get_node_base_interface()->get_rcl_node_handle(),
|
||||||
|
@ -134,11 +132,11 @@ TEST_F(TestExternallyDefinedServices, extern_defined_destructor) {
|
||||||
FAIL();
|
FAIL();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
rclcpp::AnyServiceCallback<rclcpp::srv::Mock> cb;
|
rclcpp::AnyServiceCallback<test_msgs::srv::Empty> cb;
|
||||||
|
|
||||||
{
|
{
|
||||||
// Call constructor
|
// Call constructor
|
||||||
rclcpp::Service<rclcpp::srv::Mock> srv_cpp(
|
rclcpp::Service<test_msgs::srv::Empty> srv_cpp(
|
||||||
node_handle->get_node_base_interface()->get_shared_rcl_node_handle(),
|
node_handle->get_node_base_interface()->get_shared_rcl_node_handle(),
|
||||||
&service_handle, cb);
|
&service_handle, cb);
|
||||||
// Call destructor
|
// Call destructor
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue