1919
2020#include " action_msgs/srv/cancel_goal.h"
2121
22+ #include " osrf_testing_tools_cpp/scope_exit.hpp"
23+
2224#include " rcl_action/action_server.h"
2325
2426#include " rcl/error_handling.h"
@@ -137,12 +139,21 @@ TEST(TestActionServerInitFini, test_action_server_init_fini)
137139 ret = rcl_clock_fini (&clock);
138140 EXPECT_EQ (ret, RCL_RET_OK) << rcl_get_error_string ().str ;
139141
142+ // Finalize init_options
143+ ret = rcl_init_options_fini (&init_options);
144+ EXPECT_EQ (RCL_RET_OK, ret) << rcl_get_error_string ().str ;
145+
140146 // Finalize node
141147 ret = rcl_node_fini (&node);
142148 EXPECT_EQ (RCL_RET_OK, ret) << rcl_get_error_string ().str ;
143149
150+ // Shutdown node
144151 ret = rcl_shutdown (&context);
145152 EXPECT_EQ (RCL_RET_OK, ret) << rcl_get_error_string ().str ;
153+
154+ // Finalize context
155+ ret = rcl_context_fini (&context);
156+ EXPECT_EQ (RCL_RET_OK, ret) << rcl_get_error_string ().str ;
146157}
147158
148159class TestActionServer : public ::testing::Test
@@ -155,6 +166,9 @@ class TestActionServer : public ::testing::Test
155166 rcl_init_options_t init_options = rcl_get_zero_initialized_init_options ();
156167 ret = rcl_init_options_init (&init_options, allocator);
157168 ASSERT_EQ (RCL_RET_OK, ret) << rcl_get_error_string ().str ;
169+ OSRF_TESTING_TOOLS_CPP_SCOPE_EXIT ({
170+ EXPECT_EQ (RCL_RET_OK, rcl_init_options_fini (&init_options)) << rcl_get_error_string ().str ;
171+ });
158172 context = rcl_get_zero_initialized_context ();
159173 ret = rcl_init (0 , nullptr , &init_options, &context);
160174 ASSERT_EQ (RCL_RET_OK, ret) << rcl_get_error_string ().str ;
@@ -185,6 +199,8 @@ class TestActionServer : public ::testing::Test
185199 EXPECT_EQ (ret, RCL_RET_OK) << rcl_get_error_string ().str ;
186200 ret = rcl_shutdown (&context);
187201 EXPECT_EQ (RCL_RET_OK, ret) << rcl_get_error_string ().str ;
202+ ret = rcl_context_fini (&this ->context );
203+ EXPECT_EQ (RCL_RET_OK, ret) << rcl_get_error_string ().str ;
188204 }
189205
190206 void init_test_uuid0 (uint8_t * uuid)
0 commit comments