mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-28 06:13:31 +01:00
Add unit test for format_hex_number_for_helper_exit_status()
This commit is contained in:
parent
c21af69f29
commit
770374a6b3
@ -2464,6 +2464,44 @@ test_util_spawn_background_partial_read(void *ptr)
|
||||
tor_process_handle_destroy(process_handle, 1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test for format_hex_number_for_helper_exit_status()
|
||||
*/
|
||||
|
||||
static void
|
||||
test_util_format_hex_number(void *ptr)
|
||||
{
|
||||
int i, len;
|
||||
char buf[HEX_ERRNO_SIZE + 1];
|
||||
const struct {
|
||||
const char *str;
|
||||
unsigned int x;
|
||||
} test_data[] = {
|
||||
{"0", 0},
|
||||
{"1", 1},
|
||||
{"273A", 0x273a},
|
||||
{"FFFF", 0xffff},
|
||||
#if UINT_MAX >= 0xffffffff
|
||||
{"31BC421D", 0x31bc421d},
|
||||
{"FFFFFFFF", 0xffffffff},
|
||||
#endif
|
||||
{NULL, 0}
|
||||
};
|
||||
|
||||
(void)ptr;
|
||||
|
||||
for (i = 0; test_data[i].str != NULL; ++i) {
|
||||
len = format_hex_number_for_helper_exit_status(test_data[i].x,
|
||||
buf, HEX_ERRNO_SIZE);
|
||||
test_neq(len, 0);
|
||||
buf[len] = '\0';
|
||||
test_streq(buf, test_data[i].str);
|
||||
}
|
||||
|
||||
done:
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test that we can properly format q Windows command line
|
||||
*/
|
||||
@ -3031,6 +3069,7 @@ struct testcase_t util_tests[] = {
|
||||
UTIL_TEST(spawn_background_ok, 0),
|
||||
UTIL_TEST(spawn_background_fail, 0),
|
||||
UTIL_TEST(spawn_background_partial_read, 0),
|
||||
UTIL_TEST(format_hex_number, 0),
|
||||
UTIL_TEST(join_win_cmdline, 0),
|
||||
UTIL_TEST(split_lines, 0),
|
||||
UTIL_TEST(n_bits_set, 0),
|
||||
|
Loading…
Reference in New Issue
Block a user