X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=tests%2Flib%2Ftest_bin_info.c;h=0a7da604b7de5f45d550f3f68d3ba75d1bb2c4b0;hp=011b09a185b84b93b7ee38c6375bf542af4fb616;hb=5f07b6ce3098d87af3d413a67dacb5e85b2bcafe;hpb=dae52e7673333cf41828c8686158948ce93ef104 diff --git a/tests/lib/test_bin_info.c b/tests/lib/test_bin_info.c index 011b09a1..0a7da604 100644 --- a/tests/lib/test_bin_info.c +++ b/tests/lib/test_bin_info.c @@ -66,27 +66,35 @@ void test_bin_info_build_id(const char *data_dir) snprintf(path, PATH_MAX, "%s/%s", data_dir, SO_NAME_BUILD_ID); bin = bin_info_create(path, SO_LOW_ADDR, SO_MEMSZ, true); - ok(bin != NULL, "bin_info_create succesful"); + ok(bin != NULL, "bin_info_create successful"); /* Test setting build_id */ ret = bin_info_set_build_id(bin, build_id, BUILD_ID_LEN); - ok(ret == 0, "bin_info_set_build_id succesful"); + ok(ret == 0, "bin_info_set_build_id successful"); /* Test function name lookup (with DWARF) */ ret = bin_info_lookup_function_name(bin, FUNC_FOO_ADDR, &func_name); - ok(ret == 0, "bin_info_lookup_function_name succesful"); - ok(strcmp(func_name, FUNC_FOO_NAME) == 0, - "bin_info_lookup_function_name - correct func_name value"); - free(func_name); + ok(ret == 0, "bin_info_lookup_function_name successful"); + if (func_name) { + ok(strcmp(func_name, FUNC_FOO_NAME) == 0, + "bin_info_lookup_function_name - correct func_name value"); + free(func_name); + } else { + skip(1, "bin_info_lookup_function_name - func_name is NULL"); + } /* Test source location lookup */ ret = bin_info_lookup_source_location(bin, FUNC_FOO_ADDR, &src_loc); - ok(ret == 0, "bin_info_lookup_source_location succesful"); - ok(src_loc->line_no == FUNC_FOO_LINE_NO, - "bin_info_lookup_source_location - correct line_no"); - ok(strcmp(src_loc->filename, FUNC_FOO_FILENAME) == 0, - "bin_info_lookup_source_location - correct filename"); - source_location_destroy(src_loc); + ok(ret == 0, "bin_info_lookup_source_location successful"); + if (src_loc) { + ok(src_loc->line_no == FUNC_FOO_LINE_NO, + "bin_info_lookup_source_location - correct line_no"); + ok(strcmp(src_loc->filename, FUNC_FOO_FILENAME) == 0, + "bin_info_lookup_source_location - correct filename"); + source_location_destroy(src_loc); + } else { + skip(2, "bin_info_lookup_source_location - src_loc is NULL"); + } bin_info_destroy(bin); } @@ -107,29 +115,37 @@ void test_bin_info_debug_link(const char *data_dir) snprintf(path, PATH_MAX, "%s/%s", data_dir, SO_NAME_DEBUG_LINK); bin = bin_info_create(path, SO_LOW_ADDR, SO_MEMSZ, true); - ok(bin != NULL, "bin_info_create succesful"); + ok(bin != NULL, "bin_info_create successful"); /* Test setting debug link */ ret = bin_info_set_debug_link(bin, dbg_filename, crc); - ok(ret == 0, "bin_info_set_debug_link succesful"); + ok(ret == 0, "bin_info_set_debug_link successful"); /* Test function name lookup (with DWARF) */ ret = bin_info_lookup_function_name(bin, FUNC_FOO_ADDR_DBG_LINK, &func_name); - ok(ret == 0, "bin_info_lookup_function_name succesful"); - ok(strcmp(func_name, FUNC_FOO_NAME) == 0, - "bin_info_lookup_function_name - correct func_name value"); - free(func_name); + ok(ret == 0, "bin_info_lookup_function_name successful"); + if (func_name) { + ok(strcmp(func_name, FUNC_FOO_NAME) == 0, + "bin_info_lookup_function_name - correct func_name value"); + free(func_name); + } else { + skip(1, "bin_info_lookup_function_name - func_name is NULL"); + } /* Test source location lookup */ ret = bin_info_lookup_source_location(bin, FUNC_FOO_ADDR_DBG_LINK, &src_loc); - ok(ret == 0, "bin_info_lookup_source_location succesful"); - ok(src_loc->line_no == FUNC_FOO_LINE_NO, - "bin_info_lookup_source_location - correct line_no"); - ok(strcmp(src_loc->filename, FUNC_FOO_FILENAME) == 0, - "bin_info_lookup_source_location - correct filename"); - source_location_destroy(src_loc); + ok(ret == 0, "bin_info_lookup_source_location successful"); + if (src_loc) { + ok(src_loc->line_no == FUNC_FOO_LINE_NO, + "bin_info_lookup_source_location - correct line_no"); + ok(strcmp(src_loc->filename, FUNC_FOO_FILENAME) == 0, + "bin_info_lookup_source_location - correct filename"); + source_location_destroy(src_loc); + } else { + skip(2, "bin_info_lookup_source_location - src_loc is NULL"); + } bin_info_destroy(bin); } @@ -148,15 +164,19 @@ void test_bin_info_elf(const char *data_dir) snprintf(path, PATH_MAX, "%s/%s", data_dir, SO_NAME_ELF); bin = bin_info_create(path, SO_LOW_ADDR, SO_MEMSZ, true); - ok(bin != NULL, "bin_info_create succesful"); + ok(bin != NULL, "bin_info_create successful"); /* Test function name lookup (with ELF) */ ret = bin_info_lookup_function_name(bin, FUNC_FOO_ADDR_ELF, &func_name); - ok(ret == 0, "bin_info_lookup_function_name succesful"); - ok(strcmp(func_name, FUNC_FOO_NAME_ELF) == 0, - "bin_info_lookup_function_name - correct func_name value"); - free(func_name); - func_name = NULL; + ok(ret == 0, "bin_info_lookup_function_name successful"); + if (func_name) { + ok(strcmp(func_name, FUNC_FOO_NAME_ELF) == 0, + "bin_info_lookup_function_name - correct func_name value"); + free(func_name); + func_name = NULL; + } else { + skip(1, "bin_info_lookup_function_name - func_name is NULL"); + } /* Test function name lookup - erroneous address */ ret = bin_info_lookup_function_name(bin, 0, &func_name); @@ -185,7 +205,7 @@ void test_bin_info(const char *data_dir) snprintf(path, PATH_MAX, "%s/%s", data_dir, SO_NAME); bin = bin_info_create(path, SO_LOW_ADDR, SO_MEMSZ, true); - ok(bin != NULL, "bin_info_create succesful"); + ok(bin != NULL, "bin_info_create successful"); /* Test bin_info_has_address */ ret = bin_info_has_address(bin, 0); @@ -201,11 +221,15 @@ void test_bin_info(const char *data_dir) /* Test function name lookup (with DWARF) */ ret = bin_info_lookup_function_name(bin, FUNC_FOO_ADDR, &func_name); - ok(ret == 0, "bin_info_lookup_function_name succesful"); - ok(strcmp(func_name, FUNC_FOO_NAME) == 0, - "bin_info_lookup_function_name - correct func_name value"); - free(func_name); - func_name = NULL; + ok(ret == 0, "bin_info_lookup_function_name successful"); + if (func_name) { + ok(strcmp(func_name, FUNC_FOO_NAME) == 0, + "bin_info_lookup_function_name - correct func_name value"); + free(func_name); + func_name = NULL; + } else { + skip(1, "bin_info_lookup_function_name - func_name is NULL"); + } /* Test function name lookup - erroneous address */ ret = bin_info_lookup_function_name(bin, 0, &func_name); @@ -214,24 +238,32 @@ void test_bin_info(const char *data_dir) /* Test source location lookup */ ret = bin_info_lookup_source_location(bin, FUNC_FOO_ADDR, &src_loc); - ok(ret == 0, "bin_info_lookup_source_location succesful"); - ok(src_loc->line_no == FUNC_FOO_LINE_NO, - "bin_info_lookup_source_location - correct line_no"); - ok(strcmp(src_loc->filename, FUNC_FOO_FILENAME) == 0, - "bin_info_lookup_source_location - correct filename"); - source_location_destroy(src_loc); - src_loc = NULL; + ok(ret == 0, "bin_info_lookup_source_location successful"); + if (src_loc) { + ok(src_loc->line_no == FUNC_FOO_LINE_NO, + "bin_info_lookup_source_location - correct line_no"); + ok(strcmp(src_loc->filename, FUNC_FOO_FILENAME) == 0, + "bin_info_lookup_source_location - correct filename"); + source_location_destroy(src_loc); + src_loc = NULL; + } else { + skip(2, "bin_info_lookup_source_location - src_loc is NULL"); + } /* Test source location lookup - inlined function */ ret = bin_info_lookup_source_location(bin, FUNC_FOO_TP_ADDR, &src_loc); ok(ret == 0, - "bin_info_lookup_source_location (inlined func) succesful"); - ok(src_loc->line_no == FUNC_FOO_TP_LINE_NO, - "bin_info_lookup_source_location (inlined func) - correct line_no"); - ok(strcmp(src_loc->filename, FUNC_FOO_TP_FILENAME) == 0, - "bin_info_lookup_source_location (inlined func) - correct filename"); - source_location_destroy(src_loc); - src_loc = NULL; + "bin_info_lookup_source_location (inlined func) successful"); + if (src_loc) { + ok(src_loc->line_no == FUNC_FOO_TP_LINE_NO, + "bin_info_lookup_source_location (inlined func) - correct line_no"); + ok(strcmp(src_loc->filename, FUNC_FOO_TP_FILENAME) == 0, + "bin_info_lookup_source_location (inlined func) - correct filename"); + source_location_destroy(src_loc); + src_loc = NULL; + } else { + skip(2, "bin_info_lookup_source_location (inlined func) - src_loc is NULL"); + } /* Test source location lookup - erroneous address */ ret = bin_info_lookup_source_location(bin, 0, &src_loc); @@ -254,7 +286,7 @@ int main(int argc, char **argv) } ret = bin_info_init(); - ok(ret == 0, "bin_info_init succesful"); + ok(ret == 0, "bin_info_init successful"); test_bin_info(opt_debug_info_dir); test_bin_info_elf(opt_debug_info_dir);