about summary refs log tree commit homepage
path: root/test/unit/test_http_parser_ng.rb
diff options
context:
space:
mode:
authorEric Wong <bofh@yhbt.net>2021-10-22 09:58:41 +0000
committerEric Wong <bofh@yhbt.net>2021-10-25 04:05:28 +0000
commit0af6e2d0c8fbb606db58b213ff4d0d28a1e38f4e (patch)
tree73757c5fe4da15c9ff16849452049ae7c990b808 /test/unit/test_http_parser_ng.rb
parentd60372b5c3ba517f1015b93912824e0675a4326d (diff)
downloadunicorn-pico.tar.gz
This should open the door for us to process chunked data faster
by modifying the buffer in-place rather than copying to a
destination buffer.
Diffstat (limited to 'test/unit/test_http_parser_ng.rb')
-rw-r--r--test/unit/test_http_parser_ng.rb13
1 files changed, 8 insertions, 5 deletions
diff --git a/test/unit/test_http_parser_ng.rb b/test/unit/test_http_parser_ng.rb
index 425d5ad..40fe2e3 100644
--- a/test/unit/test_http_parser_ng.rb
+++ b/test/unit/test_http_parser_ng.rb
@@ -230,8 +230,10 @@ class HttpParserNgTest < Test::Unit::TestCase
     tmp = ""
     assert_nil @parser.filter_body(tmp, str << "..")
     assert_equal "..", tmp
-    assert_nil @parser.filter_body(tmp, str << "abcd\r\n0\r\n")
+    assert_nil @parser.filter_body(tmp, str << "abcd")
     assert_equal "abcd", tmp
+    @parser.filter_body(tmp, str << "\r\n0\r\n")
+    assert_equal "", tmp
     assert_equal str.object_id, @parser.filter_body(tmp, str << "PUT").object_id
     assert_equal "PUT", str
     assert ! @parser.keepalive?
@@ -318,7 +320,7 @@ class HttpParserNgTest < Test::Unit::TestCase
            "1\r\na\r\n2\r\n..\r\n0\r\n"
     assert_equal req, @parser.parse
     tmp = ''
-    assert_nil @parser.filter_body(tmp, str)
+    @parser.filter_body(tmp, str)
     assert_equal 'a..', tmp
     rv = @parser.filter_body(tmp, str)
     assert_equal rv.object_id, str.object_id
@@ -357,7 +359,8 @@ class HttpParserNgTest < Test::Unit::TestCase
     assert_equal 'Content-MD5', req['HTTP_TRAILER']
     assert_nil req['HTTP_CONTENT_MD5']
     tmp = ''
-    assert_nil @parser.filter_body(tmp, str)
+    # assert_nil @parser.filter_body(tmp, str)
+    @parser.filter_body(tmp, str)
     assert_equal 'a..', tmp
     md5_b64 = [ Digest::MD5.digest(tmp) ].pack('m').strip.freeze
     rv = @parser.filter_body(tmp, str)
@@ -387,7 +390,7 @@ class HttpParserNgTest < Test::Unit::TestCase
     assert_equal 'Content-MD5', req['HTTP_TRAILER']
     assert_nil req['HTTP_CONTENT_MD5']
     tmp = ''
-    assert_nil @parser.filter_body(tmp, str)
+    @parser.filter_body(tmp, str)
     assert_equal 'a..', tmp
     md5_b64 = [ Digest::MD5.digest(tmp) ].pack('m').strip.freeze
     rv = @parser.filter_body(tmp, str)
@@ -471,7 +474,7 @@ class HttpParserNgTest < Test::Unit::TestCase
     assert_equal req, @parser.parse
     assert_equal 'Transfer-Encoding', req['HTTP_TRAILER']
     tmp = ''
-    assert_nil @parser.filter_body(tmp, str)
+    @parser.filter_body(tmp, str)
     assert_equal 'a..', tmp
     assert_equal '', str
     str << "Transfer-Encoding: identity\r\n\r\n"