From 6dc488bd7ee616c84dd2867e34ec6ad26e5f49ac Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Fri, 31 Jul 2009 17:34:18 +0000 Subject: [PATCH] Improved coverage for evbuffer_readln() svn:r1402 --- test/regress_buffer.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/test/regress_buffer.c b/test/regress_buffer.c index 1d698290..ff7cccad 100644 --- a/test/regress_buffer.c +++ b/test/regress_buffer.c @@ -493,7 +493,6 @@ test_evbuffer_readln(void *ptr) cp = evbuffer_readln(evb, &sz, EVBUFFER_EOL_CRLF_STRICT); tt_assert(!cp); - free(cp); evbuffer_validate(evb); evbuffer_add(evb, "\n", 1); evbuffer_validate(evb); @@ -504,6 +503,25 @@ test_evbuffer_readln(void *ptr) tt_assert(evbuffer_get_length(evb) == 0); evbuffer_validate(evb); + s = "An internal CR\r is not an eol\r\nNor is a lack of one"; + evbuffer_add(evb, s, strlen(s)); + cp = evbuffer_readln(evb, &sz, EVBUFFER_EOL_CRLF_STRICT); + tt_line_eq("An internal CR\r is not an eol"); + free(cp); + evbuffer_validate(evb); + + cp = evbuffer_readln(evb, &sz, EVBUFFER_EOL_CRLF_STRICT); + tt_assert(!cp); + evbuffer_validate(evb); + + evbuffer_add(evb, "\r\n", 2); + evbuffer_validate(evb); + cp = evbuffer_readln(evb, &sz, EVBUFFER_EOL_CRLF_STRICT); + tt_line_eq("Nor is a lack of one"); + free(cp); + tt_assert(evbuffer_get_length(evb) == 0); + evbuffer_validate(evb); + /* Test LF */ s = "An\rand a nl\n\nText"; evbuffer_add(evb, s, strlen(s)); -- 2.40.0