changes to support memory audit (#261)
* changes to rcutils_path_join() * remove uses of malloc/realloc/calloc/free for allocator usage instead * remove unused class members
This commit is contained in:
parent
ced49473db
commit
d63e2bc9cf
3 changed files with 54 additions and 44 deletions
|
@ -17,6 +17,7 @@
|
|||
|
||||
#include "rcl_yaml_param_parser/parser.h"
|
||||
|
||||
#include "rcutils/allocator.h"
|
||||
#include "rcutils/error_handling.h"
|
||||
#include "rcutils/filesystem.h"
|
||||
|
||||
|
@ -26,8 +27,9 @@ rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
|||
TEST(test_file_parser, correct_syntax) {
|
||||
rcutils_reset_error();
|
||||
EXPECT_TRUE(rcutils_get_cwd(cur_dir, 1024));
|
||||
char * test_path = rcutils_join_path(cur_dir, "test");
|
||||
char * path = rcutils_join_path(test_path, "correct_config.yaml");
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
char * test_path = rcutils_join_path(cur_dir, "test", allocator);
|
||||
char * path = rcutils_join_path(test_path, "correct_config.yaml", allocator);
|
||||
fprintf(stderr, "cur_path: %s\n", path);
|
||||
EXPECT_TRUE(rcutils_exists(path));
|
||||
rcl_params_t * params_hdl = rcl_yaml_node_struct_init(allocator);
|
||||
|
@ -37,15 +39,16 @@ TEST(test_file_parser, correct_syntax) {
|
|||
EXPECT_TRUE(res);
|
||||
rcl_yaml_node_struct_print(params_hdl);
|
||||
rcl_yaml_node_struct_fini(params_hdl);
|
||||
free(test_path);
|
||||
free(path);
|
||||
allocator.deallocate(test_path, allocator.state);
|
||||
allocator.deallocate(path, allocator.state);
|
||||
}
|
||||
|
||||
TEST(test_file_parser, multi_ns_correct_syntax) {
|
||||
rcutils_reset_error();
|
||||
EXPECT_TRUE(rcutils_get_cwd(cur_dir, 1024));
|
||||
char * test_path = rcutils_join_path(cur_dir, "test");
|
||||
char * path = rcutils_join_path(test_path, "multi_ns_correct.yaml");
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
char * test_path = rcutils_join_path(cur_dir, "test", allocator);
|
||||
char * path = rcutils_join_path(test_path, "multi_ns_correct.yaml", allocator);
|
||||
fprintf(stderr, "cur_path: %s\n", path);
|
||||
EXPECT_TRUE(rcutils_exists(path));
|
||||
rcl_params_t * params_hdl = rcl_yaml_node_struct_init(allocator);
|
||||
|
@ -55,15 +58,16 @@ TEST(test_file_parser, multi_ns_correct_syntax) {
|
|||
EXPECT_TRUE(res);
|
||||
rcl_yaml_node_struct_print(params_hdl);
|
||||
rcl_yaml_node_struct_fini(params_hdl);
|
||||
free(test_path);
|
||||
free(path);
|
||||
allocator.deallocate(test_path, allocator.state);
|
||||
allocator.deallocate(path, allocator.state);
|
||||
}
|
||||
|
||||
TEST(test_file_parser, seq_map1) {
|
||||
rcutils_reset_error();
|
||||
EXPECT_TRUE(rcutils_get_cwd(cur_dir, 1024));
|
||||
char * test_path = rcutils_join_path(cur_dir, "test");
|
||||
char * path = rcutils_join_path(test_path, "seq_map1.yaml");
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
char * test_path = rcutils_join_path(cur_dir, "test", allocator);
|
||||
char * path = rcutils_join_path(test_path, "seq_map1.yaml", allocator);
|
||||
fprintf(stderr, "cur_path: %s\n", path);
|
||||
EXPECT_TRUE(rcutils_exists(path));
|
||||
rcl_params_t * params_hdl = rcl_yaml_node_struct_init(allocator);
|
||||
|
@ -71,15 +75,16 @@ TEST(test_file_parser, seq_map1) {
|
|||
bool res = rcl_parse_yaml_file(path, params_hdl);
|
||||
fprintf(stderr, "%s\n", rcutils_get_error_string_safe());
|
||||
EXPECT_FALSE(res);
|
||||
free(test_path);
|
||||
free(path);
|
||||
allocator.deallocate(test_path, allocator.state);
|
||||
allocator.deallocate(path, allocator.state);
|
||||
}
|
||||
|
||||
TEST(test_file_parser, seq_map2) {
|
||||
rcutils_reset_error();
|
||||
EXPECT_TRUE(rcutils_get_cwd(cur_dir, 1024));
|
||||
char * test_path = rcutils_join_path(cur_dir, "test");
|
||||
char * path = rcutils_join_path(test_path, "seq_map2.yaml");
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
char * test_path = rcutils_join_path(cur_dir, "test", allocator);
|
||||
char * path = rcutils_join_path(test_path, "seq_map2.yaml", allocator);
|
||||
fprintf(stderr, "cur_path: %s\n", path);
|
||||
EXPECT_TRUE(rcutils_exists(path));
|
||||
rcl_params_t * params_hdl = rcl_yaml_node_struct_init(allocator);
|
||||
|
@ -87,15 +92,16 @@ TEST(test_file_parser, seq_map2) {
|
|||
bool res = rcl_parse_yaml_file(path, params_hdl);
|
||||
fprintf(stderr, "%s\n", rcutils_get_error_string_safe());
|
||||
EXPECT_FALSE(res);
|
||||
free(test_path);
|
||||
free(path);
|
||||
allocator.deallocate(test_path, allocator.state);
|
||||
allocator.deallocate(path, allocator.state);
|
||||
}
|
||||
|
||||
TEST(test_file_parser, params_with_no_node) {
|
||||
rcutils_reset_error();
|
||||
EXPECT_TRUE(rcutils_get_cwd(cur_dir, 1024));
|
||||
char * test_path = rcutils_join_path(cur_dir, "test");
|
||||
char * path = rcutils_join_path(test_path, "params_with_no_node.yaml");
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
char * test_path = rcutils_join_path(cur_dir, "test", allocator);
|
||||
char * path = rcutils_join_path(test_path, "params_with_no_node.yaml", allocator);
|
||||
fprintf(stderr, "cur_path: %s\n", path);
|
||||
EXPECT_TRUE(rcutils_exists(path));
|
||||
rcl_params_t * params_hdl = rcl_yaml_node_struct_init(allocator);
|
||||
|
@ -103,15 +109,16 @@ TEST(test_file_parser, params_with_no_node) {
|
|||
bool res = rcl_parse_yaml_file(path, params_hdl);
|
||||
fprintf(stderr, "%s\n", rcutils_get_error_string_safe());
|
||||
EXPECT_FALSE(res);
|
||||
free(test_path);
|
||||
free(path);
|
||||
allocator.deallocate(test_path, allocator.state);
|
||||
allocator.deallocate(path, allocator.state);
|
||||
}
|
||||
|
||||
TEST(test_file_parser, no_alias_support) {
|
||||
rcutils_reset_error();
|
||||
EXPECT_TRUE(rcutils_get_cwd(cur_dir, 1024));
|
||||
char * test_path = rcutils_join_path(cur_dir, "test");
|
||||
char * path = rcutils_join_path(test_path, "no_alias_support.yaml");
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
char * test_path = rcutils_join_path(cur_dir, "test", allocator);
|
||||
char * path = rcutils_join_path(test_path, "no_alias_support.yaml", allocator);
|
||||
fprintf(stderr, "cur_path: %s\n", path);
|
||||
EXPECT_TRUE(rcutils_exists(path));
|
||||
rcl_params_t * params_hdl = rcl_yaml_node_struct_init(allocator);
|
||||
|
@ -119,15 +126,16 @@ TEST(test_file_parser, no_alias_support) {
|
|||
bool res = rcl_parse_yaml_file(path, params_hdl);
|
||||
fprintf(stderr, "%s\n", rcutils_get_error_string_safe());
|
||||
EXPECT_FALSE(res);
|
||||
free(test_path);
|
||||
free(path);
|
||||
allocator.deallocate(test_path, allocator.state);
|
||||
allocator.deallocate(path, allocator.state);
|
||||
}
|
||||
|
||||
TEST(test_file_parser, max_string_sz) {
|
||||
rcutils_reset_error();
|
||||
EXPECT_TRUE(rcutils_get_cwd(cur_dir, 1024));
|
||||
char * test_path = rcutils_join_path(cur_dir, "test");
|
||||
char * path = rcutils_join_path(test_path, "max_string_sz.yaml");
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
char * test_path = rcutils_join_path(cur_dir, "test", allocator);
|
||||
char * path = rcutils_join_path(test_path, "max_string_sz.yaml", allocator);
|
||||
fprintf(stderr, "cur_path: %s\n", path);
|
||||
EXPECT_TRUE(rcutils_exists(path));
|
||||
rcl_params_t * params_hdl = rcl_yaml_node_struct_init(allocator);
|
||||
|
@ -135,15 +143,16 @@ TEST(test_file_parser, max_string_sz) {
|
|||
bool res = rcl_parse_yaml_file(path, params_hdl);
|
||||
fprintf(stderr, "%s\n", rcutils_get_error_string_safe());
|
||||
EXPECT_FALSE(res);
|
||||
free(test_path);
|
||||
free(path);
|
||||
allocator.deallocate(test_path, allocator.state);
|
||||
allocator.deallocate(path, allocator.state);
|
||||
}
|
||||
|
||||
TEST(test_file_parser, no_value1) {
|
||||
rcutils_reset_error();
|
||||
EXPECT_TRUE(rcutils_get_cwd(cur_dir, 1024));
|
||||
char * test_path = rcutils_join_path(cur_dir, "test");
|
||||
char * path = rcutils_join_path(test_path, "no_value1.yaml");
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
char * test_path = rcutils_join_path(cur_dir, "test", allocator);
|
||||
char * path = rcutils_join_path(test_path, "no_value1.yaml", allocator);
|
||||
fprintf(stderr, "cur_path: %s\n", path);
|
||||
EXPECT_TRUE(rcutils_exists(path));
|
||||
rcl_params_t * params_hdl = rcl_yaml_node_struct_init(allocator);
|
||||
|
@ -151,15 +160,16 @@ TEST(test_file_parser, no_value1) {
|
|||
bool res = rcl_parse_yaml_file(path, params_hdl);
|
||||
fprintf(stderr, "%s\n", rcutils_get_error_string_safe());
|
||||
EXPECT_FALSE(res);
|
||||
free(test_path);
|
||||
free(path);
|
||||
allocator.deallocate(test_path, allocator.state);
|
||||
allocator.deallocate(path, allocator.state);
|
||||
}
|
||||
|
||||
TEST(test_file_parser, indented_ns) {
|
||||
rcutils_reset_error();
|
||||
EXPECT_TRUE(rcutils_get_cwd(cur_dir, 1024));
|
||||
char * test_path = rcutils_join_path(cur_dir, "test");
|
||||
char * path = rcutils_join_path(test_path, "indented_name_space.yaml");
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
char * test_path = rcutils_join_path(cur_dir, "test", allocator);
|
||||
char * path = rcutils_join_path(test_path, "indented_name_space.yaml", allocator);
|
||||
fprintf(stderr, "cur_path: %s\n", path);
|
||||
EXPECT_TRUE(rcutils_exists(path));
|
||||
rcl_params_t * params_hdl = rcl_yaml_node_struct_init(allocator);
|
||||
|
@ -167,8 +177,8 @@ TEST(test_file_parser, indented_ns) {
|
|||
bool res = rcl_parse_yaml_file(path, params_hdl);
|
||||
fprintf(stderr, "%s\n", rcutils_get_error_string_safe());
|
||||
EXPECT_FALSE(res);
|
||||
free(test_path);
|
||||
free(path);
|
||||
allocator.deallocate(test_path, allocator.state);
|
||||
allocator.deallocate(path, allocator.state);
|
||||
}
|
||||
|
||||
int32_t main(int32_t argc, char ** argv)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue