]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Coverate in util.c: test that tor_parse_* rejects negative base.
authorNick Mathewson <nickm@torproject.org>
Mon, 13 Jan 2014 21:38:48 +0000 (16:38 -0500)
committerNick Mathewson <nickm@torproject.org>
Fri, 17 Jan 2014 16:58:09 +0000 (11:58 -0500)
src/test/test_util.c

index 376e3aab8e311ba9a9b175559db321cc0fb0b445..9104088c90c909dc58f7897c9c91e2539f51fc3a 100644 (file)
@@ -1027,6 +1027,8 @@ test_util_strmisc(void)
   test_eq(0L,   tor_parse_long("10",-2,0,100,NULL,NULL));
   test_eq(68284L, tor_parse_long("10abc",16,0,70000,NULL,NULL));
   test_eq(68284L, tor_parse_long("10ABC",16,0,70000,NULL,NULL));
+  test_eq(0, tor_parse_long("10ABC",-1,0,70000,&i,NULL));
+  test_eq(i, 0);
 
   /* Test parse_ulong */
   test_eq(0UL, tor_parse_ulong("",10,0,100,NULL,NULL));
@@ -1038,6 +1040,8 @@ test_util_strmisc(void)
   test_eq(0UL, tor_parse_ulong("8",8,0,100,NULL,NULL));
   test_eq(50UL, tor_parse_ulong("50",10,50,100,NULL,NULL));
   test_eq(0UL, tor_parse_ulong("-50",10,-100,100,NULL,NULL));
+  test_eq(0UL, tor_parse_ulong("50",-1,50,100,&i,NULL));
+  test_eq(0, i);
 
   /* Test parse_uint64 */
   test_assert(U64_LITERAL(10) == tor_parse_uint64("10 x",10,0,100, &i, &cp));
@@ -1050,6 +1054,9 @@ test_util_strmisc(void)
   test_assert(U64_LITERAL(0) ==
               tor_parse_uint64("12345678901",10,500,INT32_MAX, &i, &cp));
   test_eq(0, i);
+  test_assert(U64_LITERAL(0) ==
+              tor_parse_uint64("123",-1,0,INT32_MAX, &i, &cp));
+  test_eq(0, i);
 
   {
   /* Test parse_double */