瀏覽代碼

Adapt unit test: parse_http_headers now works differently on invalid HTTP headers

Before parsing "GET / HTTP/1.1\r\nA: foo bar\r\nB: bar\r\nbaz\r\n\r\n"
returned a header field "baz\r\n\r" - this makes no sense.
Now it returns a header field "baz" without value.
bel 9 年之前
父節點
當前提交
b61763b836
共有 1 個文件被更改,包括 2 次插入2 次删除
  1. 2 2
      test/private.c

+ 2 - 2
test/private.c

@@ -87,8 +87,8 @@ START_TEST(test_parse_http_message)
 	ck_assert_str_eq("foo bar", ri.http_headers[0].value);
 	ck_assert_str_eq("foo bar", ri.http_headers[0].value);
 	ck_assert_str_eq("B", ri.http_headers[1].name);
 	ck_assert_str_eq("B", ri.http_headers[1].name);
 	ck_assert_str_eq("bar", ri.http_headers[1].value);
 	ck_assert_str_eq("bar", ri.http_headers[1].value);
-	ck_assert_str_eq("baz\r\n\r", ri.http_headers[2].name);
-	ck_assert_str_eq("", ri.http_headers[2].value);
+	ck_assert_str_eq("baz", ri.http_headers[2].name);
+	ck_assert(ri.http_headers[2].value == NULL);
 
 
 	ck_assert_int_eq(sizeof(req5) - 1,
 	ck_assert_int_eq(sizeof(req5) - 1,
 	                 parse_http_message(req5, sizeof(req5), &ri));
 	                 parse_http_message(req5, sizeof(req5), &ri));