diff options
author | Eric Wong <e@80x24.org> | 2015-06-06 01:07:55 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2015-06-06 01:07:55 +0000 |
commit | c3bc5864d0b8c56adee9544b64c9182d8d4eb206 (patch) | |
tree | 57a07b0f9a60550af8f7bdaa7e413f10261a2f7e /test | |
parent | 5aa6b7ad7d8847a5d191ecf8606919b7886df7c2 (diff) | |
download | unicorn-c3bc5864d0b8c56adee9544b64c9182d8d4eb206.tar.gz |
Combined with the previous commit to eliminate the `@socket' instance variable, this eliminates the last instance variable in the Unicorn::HttpRequest class. Eliminating the last instance variable avoids the creation of a internal hash table used for implementing the "generic" instance variables found in non-pure-Ruby classes. Method entry overhead remains the same. While this change doesn't do a whole lot for unicorn memory usage where the HttpRequest is a singleton, it helps other HTTP servers which rely on this code where thousands of clients may be connected.
Diffstat (limited to 'test')
-rw-r--r-- | test/unit/test_http_parser_ng.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/test/unit/test_http_parser_ng.rb b/test/unit/test_http_parser_ng.rb index efd82e1..d186f5a 100644 --- a/test/unit/test_http_parser_ng.rb +++ b/test/unit/test_http_parser_ng.rb @@ -34,6 +34,17 @@ class HttpParserNgTest < Test::Unit::TestCase assert_equal false, @parser.response_start_sent end + def test_response_start_sent + assert_equal false, @parser.response_start_sent, "default is false" + @parser.response_start_sent = true + assert_equal true, @parser.response_start_sent + @parser.response_start_sent = false + assert_equal false, @parser.response_start_sent + @parser.response_start_sent = true + @parser.clear + assert_equal false, @parser.response_start_sent + end + def test_connection_TE @parser.buf << "GET / HTTP/1.1\r\nHost: example.com\r\nConnection: TE\r\n" @parser.buf << "TE: trailers\r\n\r\n" |