[or-cvs] [tor/master] i couldn't break nick's tor_parse_double()

arma at seul.org arma at seul.org
Wed Sep 2 05:11:02 UTC 2009


Author: Roger Dingledine <arma at torproject.org>
Date: Wed, 2 Sep 2009 01:10:10 -0400
Subject: i couldn't break nick's tor_parse_double()
Commit: 3de5ac9baa7dc12f5bc441d75a8be48995e0f3a8

i guess that means i should call them unit tests and check them in.
---
 src/or/test.c |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/src/or/test.c b/src/or/test.c
index 9d5169d..d34fc45 100644
--- a/src/or/test.c
+++ b/src/or/test.c
@@ -1114,6 +1114,24 @@ test_util(void)
               tor_parse_uint64("12345678901",10,500,INT32_MAX, &i, &cp));
   test_assert(i == 0);
 
+  {
+  /* Test tor_parse_double. */
+  double d = tor_parse_double("10", 0, UINT64_MAX,&i,NULL);
+  test_assert(i == 1);
+  test_assert(DBL_TO_U64(d) == 10);
+  d = tor_parse_double("0", 0, UINT64_MAX,&i,NULL);
+  test_assert(i == 1);
+  test_assert(DBL_TO_U64(d) == 0);
+  d = tor_parse_double(" ", 0, UINT64_MAX,&i,NULL);
+  test_assert(i == 0);
+  d = tor_parse_double(".0a", 0, UINT64_MAX,&i,NULL);
+  test_assert(i == 0);
+  d = tor_parse_double(".0a", 0, UINT64_MAX,&i,&cp);
+  test_assert(i == 1);
+  d = tor_parse_double("-.0", 0, UINT64_MAX,&i,NULL);
+  test_assert(i == 1);
+  }
+
   /* Test failing snprintf cases */
   test_eq(-1, tor_snprintf(buf, 0, "Foo"));
   test_eq(-1, tor_snprintf(buf, 2, "Foo"));
-- 
1.5.6.5



More information about the tor-commits mailing list