From 07a16b33724c90c74a96e42f89ccd1ccdcccf2a7 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Tue, 2 Sep 2014 13:29:11 -0400 Subject: Add an assertion to read_file_to_str_until_eof The clangalyzer doesn't believe our math here. I'm pretty sure our math is right. Also, add some unit tests. --- src/test/test_util.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'src/test') diff --git a/src/test/test_util.c b/src/test/test_util.c index c32fadd119..1b7c936fd7 100644 --- a/src/test/test_util.c +++ b/src/test/test_util.c @@ -86,6 +86,20 @@ test_util_read_file_eof_tiny_limit(void *arg) test_util_read_until_eof_impl("tor_test_fifo_tiny", 5, 4); } +static void +test_util_read_file_eof_one_loop_a(void *arg) +{ + (void)arg; + test_util_read_until_eof_impl("tor_test_fifo_1ka", 1024, 1023); +} + +static void +test_util_read_file_eof_one_loop_b(void *arg) +{ + (void)arg; + test_util_read_until_eof_impl("tor_test_fifo_1kb", 1024, 1024); +} + static void test_util_read_file_eof_two_loops(void *arg) { @@ -97,6 +111,14 @@ test_util_read_file_eof_two_loops(void *arg) test_util_read_until_eof_impl("tor_test_fifo_2k", 2048, 10000); } +static void +test_util_read_file_eof_two_loops_b(void *arg) +{ + (void)arg; + + test_util_read_until_eof_impl("tor_test_fifo_2kb", 2048, 2048); +} + static void test_util_read_file_eof_zero_bytes(void *arg) { @@ -3870,7 +3892,10 @@ struct testcase_t util_tests[] = { UTIL_TEST(make_environment, 0), UTIL_TEST(set_env_var_in_sl, 0), UTIL_TEST(read_file_eof_tiny_limit, 0), + UTIL_TEST(read_file_eof_one_loop_a, 0), + UTIL_TEST(read_file_eof_one_loop_b, 0), UTIL_TEST(read_file_eof_two_loops, 0), + UTIL_TEST(read_file_eof_two_loops_b, 0), UTIL_TEST(read_file_eof_zero_bytes, 0), UTIL_TEST(write_chunks_to_file, 0), UTIL_TEST(mathlog, 0), -- cgit v1.2.3-54-g00ecf