Skip to content

Commit 1cea7f2

Browse files
committed
fix test failures
1 parent e9c2669 commit 1cea7f2

File tree

2 files changed

+13
-7
lines changed

2 files changed

+13
-7
lines changed

controller_interface/src/chainable_controller_interface.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,9 @@ ChainableControllerInterface::export_state_interfaces()
5757
if (interface.get_prefix_name() != get_node()->get_name())
5858
{
5959
std::string error_msg =
60-
"The name of the interface '" + interface.get_name() +
61-
"' does not begin with the controller's name. This is "
62-
"mandatory for state interfaces. No state interface will be exported. Please "
60+
"The prefix of the interface '" + interface.get_prefix_name() +
61+
"' does not equal the controller's name '" + get_node()->get_name() +
62+
"'. This is mandatory for state interfaces. No state interface will be exported. Please "
6363
"correct and recompile the controller with name '" +
6464
get_node()->get_name() + "' and try again.";
6565
throw std::runtime_error(error_msg);

controller_interface/test/test_chainable_controller_interface.cpp

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
#include "test_chainable_controller_interface.hpp"
1616

1717
#include <gmock/gmock.h>
18+
#include <memory>
1819

1920
using ::testing::IsEmpty;
2021
using ::testing::SizeIs;
@@ -51,7 +52,7 @@ TEST_F(ChainableControllerInterfaceTest, export_state_interfaces)
5152
EXPECT_EQ(exported_state_interfaces[0]->get_prefix_name(), TEST_CONTROLLER_NAME);
5253
EXPECT_EQ(exported_state_interfaces[0]->get_interface_name(), "test_state");
5354

54-
EXPECT_EQ(exported_state_interfaces[0]->get_value(), INTERFACE_VALUE);
55+
EXPECT_EQ(exported_state_interfaces[0]->get_value(), EXPORTED_STATE_INTERFACE_VALUE);
5556
}
5657

5758
TEST_F(ChainableControllerInterfaceTest, export_reference_interfaces)
@@ -88,10 +89,15 @@ TEST_F(ChainableControllerInterfaceTest, interfaces_prefix_is_not_node_name)
8889
controller.set_name_prefix_of_reference_interfaces("some_not_correct_interface_prefix");
8990

9091
// expect empty return because interface prefix is not equal to the node name
91-
auto reference_interfaces = controller.export_reference_interfaces();
92-
ASSERT_THAT(reference_interfaces, IsEmpty());
92+
std::vector<std::shared_ptr<hardware_interface::CommandInterface>> exported_reference_interfaces;
93+
EXPECT_THROW(
94+
{ exported_reference_interfaces = controller.export_reference_interfaces(); },
95+
std::runtime_error);
96+
ASSERT_THAT(exported_reference_interfaces, IsEmpty());
9397
// expect empty return because interface prefix is not equal to the node name
94-
auto exported_state_interfaces = controller.export_state_interfaces();
98+
std::vector<std::shared_ptr<hardware_interface::StateInterface>> exported_state_interfaces;
99+
EXPECT_THROW(
100+
{ exported_state_interfaces = controller.export_state_interfaces(); }, std::runtime_error);
95101
ASSERT_THAT(exported_state_interfaces, IsEmpty());
96102
}
97103

0 commit comments

Comments
 (0)