annotate worker_shutdown_timeout.t @ 1248:70192b1baf01

Tests: added exception test to stream_js.t using 'require'. The stream js tests introduced in edf5a3c9e36a fail on njs 0.1.14. It doesn't currently provide an easy way to check its version, whilst we are obligated to gracefully handle such cases somehow. With such an addition of 'require', now the tests are skipped instead on the previous versions.
author Sergey Kandaurov <pluknet@nginx.com>
date Tue, 21 Nov 2017 13:16:39 +0300
parents c99c1f43cb15
children 766bcbb632ee
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1149
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
1 #!/usr/bin/perl
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
2
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
3 # (C) Sergey Kandaurov
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
4 # (C) Nginx, Inc.
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
5
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
6 # Tests for worker_shutdown_timeout directive.
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
7
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
8 ###############################################################################
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
9
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
10 use warnings;
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
11 use strict;
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
12
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
13 use Test::More;
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
14
1157
06bb6af4324e Tests: adjusted worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1149
diff changeset
15 use IO::Select;
06bb6af4324e Tests: adjusted worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1149
diff changeset
16
1149
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
17 BEGIN { use FindBin; chdir($FindBin::Bin); }
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
18
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
19 use lib 'lib';
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
20 use Test::Nginx;
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
21
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
22 ###############################################################################
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
23
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
24 select STDERR; $| = 1;
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
25 select STDOUT; $| = 1;
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
26
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
27 my $t = Test::Nginx->new()->has(qw/http/)
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
28 ->write_file_expand('nginx.conf', <<'EOF');
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
29
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
30 %%TEST_GLOBALS%%
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
31
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
32 daemon off;
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
33 worker_shutdown_timeout 10ms;
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
34
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
35 events {
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
36 }
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
37
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
38 http {
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
39 %%TEST_GLOBALS_HTTP%%
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
40
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
41 server {
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
42 listen 127.0.0.1:8080;
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
43 server_name localhost;
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
44
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
45 location / { }
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
46 }
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
47 }
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
48
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
49 EOF
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
50
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
51 $t->try_run('no worker_shutdown_timeout')->plan(1);
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
52
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
53 ###############################################################################
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
54
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
55 my $s = http('', start => 1);
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
56
1162
feb91ae3fca3 Tests: reduced race in worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1160
diff changeset
57 select undef, undef, undef, 0.2;
feb91ae3fca3 Tests: reduced race in worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1160
diff changeset
58
1206
c99c1f43cb15 Tests: reload() introduced in Test::Nginx.
Sergey Kandaurov <pluknet@nginx.com>
parents: 1162
diff changeset
59 $t->reload();
1160
4ed2226d47de Tests: increased read timeout in worker_shutdown_timeout test.
Maxim Dounin <mdounin@mdounin.ru>
parents: 1157
diff changeset
60
4ed2226d47de Tests: increased read timeout in worker_shutdown_timeout test.
Maxim Dounin <mdounin@mdounin.ru>
parents: 1157
diff changeset
61 if (IO::Select->new($s)->can_read(5)) {
4ed2226d47de Tests: increased read timeout in worker_shutdown_timeout test.
Maxim Dounin <mdounin@mdounin.ru>
parents: 1157
diff changeset
62 Test::Nginx::log_core('||', "select: can_read");
4ed2226d47de Tests: increased read timeout in worker_shutdown_timeout test.
Maxim Dounin <mdounin@mdounin.ru>
parents: 1157
diff changeset
63 }
1149
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
64
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
65 is(http_get('/', socket => $s) || '', '', 'worker_shutdown_timeout');
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
66
b1c2857d2e97 Tests: basic worker_shutdown_timeout test.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff changeset
67 ###############################################################################