From a4189049628134fcfb91a5e45fd69d60e83c86ce Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Thu, 16 Jun 2016 15:52:19 -0400 Subject: Coverage on parse_config_line_from_str_verbose. --- src/test/test_util.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'src/test/test_util.c') diff --git a/src/test/test_util.c b/src/test/test_util.c index dd6b53c05a..0720822df3 100644 --- a/src/test/test_util.c +++ b/src/test/test_util.c @@ -1040,15 +1040,19 @@ test_util_config_line_quotes(void *arg) str = buf3; - str = parse_config_line_from_str_verbose(str, &k, &v, NULL); + const char *err = NULL; + str = parse_config_line_from_str_verbose(str, &k, &v, &err); tt_ptr_op(str,OP_EQ, NULL); tor_free(k); tor_free(v); + tt_str_op(err, OP_EQ, "Invalid escape sequence in quoted string"); str = buf4; - str = parse_config_line_from_str_verbose(str, &k, &v, NULL); + err = NULL; + str = parse_config_line_from_str_verbose(str, &k, &v, &err); tt_ptr_op(str,OP_EQ, NULL); tor_free(k); tor_free(v); + tt_str_op(err, OP_EQ, "Invalid escape sequence in quoted string"); done: tor_free(k); @@ -1237,6 +1241,8 @@ test_util_config_line_escaped_content(void *arg) strlcpy(buf4, "Foo \"\\q\"\n", sizeof(buf4)); /* missing endquote */ strlcpy(buf5, "Foo \"hello\n", sizeof(buf5)); + /* extra stuff */ + strlcpy(buf6, "Foo \"hello\" world\n", sizeof(buf6)); str=buf1; str = parse_config_line_from_str_verbose(str, &k, &v, NULL); @@ -1259,10 +1265,18 @@ test_util_config_line_escaped_content(void *arg) tor_free(k); tor_free(v); str=buf5; + str = parse_config_line_from_str_verbose(str, &k, &v, NULL); tt_ptr_op(str,OP_EQ, NULL); tor_free(k); tor_free(v); + str=buf6; + const char *err = NULL; + str = parse_config_line_from_str_verbose(str, &k, &v, &err); + tt_ptr_op(str,OP_EQ, NULL); + tor_free(k); tor_free(v); + tt_str_op(err,OP_EQ, "Excess data after quoted string"); + done: tor_free(k); tor_free(v); -- cgit v1.2.3-54-g00ecf