Mercurial > hg > nginx-tests
changeset 1513:02412b209838
Tests: testing worker_shutdown_timeout works with HTTP/2.
A request in HTTP/2 is ensured to be finalized with worker_shutdown_timeout
by testing that it is logged at least, and the status code is not set as it
would on proxy_read_timeout. After the fix has been fixed in ab5cac9d3f00,
the latter can be tuned to a safer value without losing in execution time.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Mon, 23 Sep 2019 20:46:30 +0300 |
parents | e84a3115bfe8 |
children | c6f27bcdd9d9 |
files | worker_shutdown_timeout_h2.t |
diffstat | 1 files changed, 9 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/worker_shutdown_timeout_h2.t +++ b/worker_shutdown_timeout_h2.t @@ -23,7 +23,7 @@ use Test::Nginx::HTTP2; select STDERR; $| = 1; select STDOUT; $| = 1; -my $t = Test::Nginx->new()->has(qw/http http_v2 proxy/)->plan(1); +my $t = Test::Nginx->new()->has(qw/http http_v2 proxy/)->plan(2); $t->write_file_expand('nginx.conf', <<'EOF'); @@ -44,7 +44,7 @@ http { location / { proxy_pass http://127.0.0.1:8081; - proxy_read_timeout 200ms; + proxy_read_timeout 5s; } } } @@ -61,6 +61,13 @@ ok($s->new_stream(), 'new stream'); select undef, undef, undef, 0.1; $t->stop(); +TODO: { +local $TODO = 'not yet' unless $t->has_version('1.17.4'); + +like($t->read_file('access.log'), qr/ (?!504)\d{3} /, 'shutdown timeout'); + +} + $t->todo_alerts() unless $t->has_version('1.17.4'); ###############################################################################