calling fini functions to avoid memory leak (#791)

* Fix test memory leaks

1.  calling rcutils_string_map_fini to avoid memory leak
2.  Fix memory leak that not to call rcutils_string_array_fini for enclaves
3.  Fix that not to rcutils_string_array_fini for node_names_2 and node_namespaces_2
4.  Fix that not to rcl_log_levels_fini for copied_log_levels
5.  Fix that not to call rmw_security_options_fini for options
6.  Call test_msgs__srv__BasicTypes_Request__fini for service_request in the end

Signed-off-by: Chen Lihui <Lihui.Chen@sony.com>
This commit is contained in:
Chen Lihui 2020-09-08 22:39:39 +08:00 committed by Alejandro Hernández Cordero
parent 2746f51f37
commit 5dc097b9bb
5 changed files with 15 additions and 0 deletions

View file

@ -226,6 +226,9 @@ TEST(test_expand_topic_name, internal_error) {
EXPECT_TRUE(rcl_error_is_set());
rcl_reset_error();
}
ret = rcutils_string_map_fini(&subs);
ASSERT_EQ(RCL_RET_OK, ret);
}
TEST(test_expand_topic_name, various_valid_topics) {

View file

@ -279,6 +279,9 @@ TEST_F(
ret = rcutils_string_array_fini(&node_namespaces);
ASSERT_EQ(RCUTILS_RET_OK, ret);
ret = rcutils_string_array_fini(&enclaves);
ASSERT_EQ(RCUTILS_RET_OK, ret);
ret = rcl_node_fini(&node1);
EXPECT_EQ(RCL_RET_OK, ret) << rcl_get_error_string().str;

View file

@ -1435,6 +1435,10 @@ TEST_F(CLASSNAME(TestGraphFixture, RMW_IMPLEMENTATION), test_bad_get_node_names)
EXPECT_EQ(RCUTILS_RET_OK, ret);
ret = rcutils_string_array_fini(&node_namespaces);
EXPECT_EQ(RCUTILS_RET_OK, ret);
ret = rcutils_string_array_fini(&node_names_2);
EXPECT_EQ(RCUTILS_RET_OK, ret);
ret = rcutils_string_array_fini(&node_namespaces_2);
EXPECT_EQ(RCUTILS_RET_OK, ret);
ret = rcutils_string_array_fini(&node_enclaves);
EXPECT_EQ(RCUTILS_RET_OK, ret);
});

View file

@ -257,6 +257,7 @@ TEST_F(TestGetSecureRoot, test_get_security_options) {
TEST_RESOURCES_DIRECTORY TEST_SECURITY_DIRECTORY_RESOURCES_DIR_NAME
PATH_SEPARATOR "enclaves" PATH_SEPARATOR TEST_ENCLAVE,
options.security_root_path);
EXPECT_EQ(RMW_RET_OK, rmw_security_options_fini(&options, &allocator));
}
TEST_F(TestGetSecureRoot, test_rcl_security_enabled) {

View file

@ -537,6 +537,10 @@ TEST_F(CLASSNAME(TestServiceFixture, RMW_IMPLEMENTATION), test_fail_take_request
test_msgs__srv__BasicTypes_Request service_request;
test_msgs__srv__BasicTypes_Request__init(&service_request);
OSRF_TESTING_TOOLS_CPP_SCOPE_EXIT(
{
test_msgs__srv__BasicTypes_Request__fini(&service_request);
});
rmw_service_info_t header;
ret = rcl_take_request_with_info(nullptr, &header, &service_request);