[tor-commits] [tor/master] unit tests for peek_buf_startswith()

nickm at torproject.org nickm at torproject.org
Wed Jul 5 15:01:47 UTC 2017


commit 6595f55020e4a73e2ccf7e87dcea4c1f0362f4aa
Author: Nick Mathewson <nickm at torproject.org>
Date:   Wed Jun 21 11:20:33 2017 -0400

    unit tests for peek_buf_startswith()
---
 src/test/test_buffers.c | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/src/test/test_buffers.c b/src/test/test_buffers.c
index 07114a8..3989a45 100644
--- a/src/test/test_buffers.c
+++ b/src/test/test_buffers.c
@@ -838,10 +838,37 @@ test_buffers_find_contentlen(void *arg)
   ;
 }
 
+static void
+test_buffer_peek_startswith(void *arg)
+{
+  (void)arg;
+  buf_t *buf;
+  buf = buf_new();
+  tt_ptr_op(buf, OP_NE, NULL);
+
+  tt_assert(peek_buf_startswith(buf, ""));
+  tt_assert(! peek_buf_startswith(buf, "X"));
+
+  write_to_buf("Tor", 3, buf);
+
+  tt_assert(peek_buf_startswith(buf, ""));
+  tt_assert(peek_buf_startswith(buf, "T"));
+  tt_assert(peek_buf_startswith(buf, "To"));
+  tt_assert(peek_buf_startswith(buf, "Tor"));
+  tt_assert(! peek_buf_startswith(buf, "Top"));
+  tt_assert(! peek_buf_startswith(buf, "For"));
+  tt_assert(! peek_buf_startswith(buf, "Tork"));
+  tt_assert(! peek_buf_startswith(buf, "Torpor"));
+
+ done:
+  buf_free(buf);
+}
+
 struct testcase_t buffer_tests[] = {
   { "basic", test_buffers_basic, TT_FORK, NULL, NULL },
   { "copy", test_buffer_copy, TT_FORK, NULL, NULL },
   { "pullup", test_buffer_pullup, TT_FORK, NULL, NULL },
+  { "startswith", test_buffer_peek_startswith, 0, NULL, NULL },
   { "ext_or_cmd", test_buffer_ext_or_cmd, TT_FORK, NULL, NULL },
   { "allocation_tracking", test_buffer_allocation_tracking, TT_FORK,
     NULL, NULL },





More information about the tor-commits mailing list