[tor-commits] [tor/master] Improve/extend strtok_r unit tests

nickm at torproject.org nickm at torproject.org
Fri Mar 9 16:30:59 UTC 2012


commit 667f5ea409a8f3950aedd60e85d23bddeb8ad9b6
Author: Esteban Manchado Velázquez <emanchado at demiurgo.org>
Date:   Wed Feb 8 23:28:21 2012 +0100

    Improve/extend strtok_r unit tests
    
    * Add several failing tests (embedded in an "#if 0" block) for behaviour that
      doesn't match strtok_r
    * Add another, passing, more interesting test
    * Use test_eq_ptr(NULL, ...) instead of test_assert(NULL == ...)
---
 src/test/test_util.c |   24 ++++++++++++++++++++++--
 1 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/src/test/test_util.c b/src/test/test_util.c
index f0603f7..732712b 100644
--- a/src/test/test_util.c
+++ b/src/test/test_util.c
@@ -1478,8 +1478,28 @@ test_util_strtok(void)
   test_streq("perfect", S2());
   test_streq("descent", S1());
   test_streq("monument", S2());
-  test_assert(NULL == S1());
-  test_assert(NULL == S2());
+  test_eq_ptr(NULL, S1());
+  test_eq_ptr(NULL, S2());
+
+#if 0
+  buf[0] = 0;
+  test_eq_ptr(NULL, tor_strtok_r_impl(buf, " ", &cp1));
+  test_eq_ptr(NULL, tor_strtok_r_impl(buf, "!", &cp1));
+
+  strlcpy(buf, "Howdy!", sizeof(buf));
+  test_streq("Howdy", tor_strtok_r_impl(buf, "!", &cp1));
+  test_eq_ptr(NULL, tor_strtok_r_impl(NULL, "!", &cp1));
+
+  strlcpy(buf, " ", sizeof(buf));
+  test_eq_ptr(NULL, tor_strtok_r_impl(buf, " ", &cp1));
+  strlcpy(buf, "  ", sizeof(buf));
+  test_eq_ptr(NULL, tor_strtok_r_impl(buf, " ", &cp1));
+#endif
+
+  strlcpy(buf, "something  ", sizeof(buf));
+  test_streq("something", tor_strtok_r_impl(buf, " ", &cp1));
+  test_streq(" ", tor_strtok_r_impl(NULL, ";", &cp1));
+  test_eq_ptr(NULL, tor_strtok_r_impl(NULL, " ", &cp1));
  done:
   ;
 }





More information about the tor-commits mailing list