From 3de5ac9baa7dc12f5bc441d75a8be48995e0f3a8 Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Wed, 2 Sep 2009 01:10:10 -0400 Subject: i couldn't break nick's tor_parse_double() i guess that means i should call them unit tests and check them in. --- src/or/test.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/or/test.c b/src/or/test.c index 9d5169d9ef..d34fc452b9 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")); -- cgit v1.2.3-54-g00ecf