Mercurial > hg > nginx-tests
annotate proxy_next_upstream.t @ 1951:1867428f1673
Tests: fixed h3_limit_req.t spurious failures.
In the "reset stream - cancellation" test, HTTP/3 stream is closed without
sending the request body when the request is waiting in the limit_req
module, and this results in error 444. However, when the request is received
with some minor delay due to system load, it is not delayed by limit_req,
and the stream is closed during reading the request body, which results
in error 400 instead, breaking the test.
Fix is to introduce yet another request before the "reset stream" test,
so the stream in question is always delayed by limit_req.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Thu, 14 Mar 2024 02:25:49 +0300 |
parents | 5ac6efbe5552 |
children |
rev | line source |
---|---|
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
1 #!/usr/bin/perl |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
2 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
3 # (C) Maxim Dounin |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
4 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
5 # Tests for http proxy module, proxy_next_upstream directive. |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
6 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
7 ############################################################################### |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
8 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
9 use warnings; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
10 use strict; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
11 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
12 use Test::More; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
13 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
14 BEGIN { use FindBin; chdir($FindBin::Bin); } |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
15 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
16 use lib 'lib'; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
17 use Test::Nginx; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
18 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
19 ############################################################################### |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
20 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
21 select STDERR; $| = 1; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
22 select STDOUT; $| = 1; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
23 |
1632
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
24 my $t = Test::Nginx->new()->has(qw/http proxy rewrite/)->plan(8); |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
25 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
26 $t->write_file_expand('nginx.conf', <<'EOF'); |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
27 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
28 %%TEST_GLOBALS%% |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
29 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
30 daemon off; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
31 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
32 events { |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
33 } |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
34 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
35 http { |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
36 %%TEST_GLOBALS_HTTP%% |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
37 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
38 upstream u { |
974
882267679006
Tests: simplified parallel modifications in tests.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
952
diff
changeset
|
39 server 127.0.0.1:8081; |
882267679006
Tests: simplified parallel modifications in tests.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
952
diff
changeset
|
40 server 127.0.0.1:8082; |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
41 } |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
42 |
351
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
43 upstream u2 { |
974
882267679006
Tests: simplified parallel modifications in tests.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
952
diff
changeset
|
44 server 127.0.0.1:8081; |
882267679006
Tests: simplified parallel modifications in tests.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
952
diff
changeset
|
45 server 127.0.0.1:8082; |
351
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
46 } |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
47 |
1632
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
48 upstream u3 { |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
49 server 127.0.0.1:8081; |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
50 server 127.0.0.1:8082 down; |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
51 } |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
52 |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
53 server { |
974
882267679006
Tests: simplified parallel modifications in tests.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
952
diff
changeset
|
54 listen 127.0.0.1:8080; |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
55 server_name localhost; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
56 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
57 location / { |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
58 proxy_pass http://u; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
59 proxy_next_upstream http_500 http_404; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
60 } |
351
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
61 |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
62 location /all/ { |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
63 proxy_pass http://u2; |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
64 proxy_next_upstream http_500 http_404; |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
65 error_page 404 /all/404; |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
66 proxy_intercept_errors on; |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
67 } |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
68 |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
69 location /all/404 { |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
70 return 200 "$upstream_addr\n"; |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
71 } |
1632
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
72 |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
73 location /down { |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
74 proxy_pass http://u3; |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
75 proxy_next_upstream http_404; |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
76 } |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
77 } |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
78 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
79 server { |
974
882267679006
Tests: simplified parallel modifications in tests.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
952
diff
changeset
|
80 listen 127.0.0.1:8081; |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
81 server_name localhost; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
82 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
83 location / { |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
84 return 404; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
85 } |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
86 location /ok { |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
87 return 200 "AND-THIS\n"; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
88 } |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
89 location /500 { |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
90 return 500; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
91 } |
351
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
92 |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
93 location /all/ { |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
94 return 404; |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
95 } |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
96 } |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
97 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
98 server { |
974
882267679006
Tests: simplified parallel modifications in tests.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
952
diff
changeset
|
99 listen 127.0.0.1:8082; |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
100 server_name localhost; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
101 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
102 location / { |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
103 return 200 "TEST-OK-IF-YOU-SEE-THIS\n"; |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
104 } |
351
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
105 |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
106 location /all/ { |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
107 return 404; |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
108 } |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
109 } |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
110 } |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
111 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
112 EOF |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
113 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
114 $t->run(); |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
115 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
116 ############################################################################### |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
117 |
974
882267679006
Tests: simplified parallel modifications in tests.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
952
diff
changeset
|
118 my ($p1, $p2) = (port(8081), port(8082)); |
952
e9064d691790
Tests: converted tests to run in parallel.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
351
diff
changeset
|
119 |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
120 # check if both request fallback to a backend |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
121 # which returns valid response |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
122 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
123 like(http_get('/'), qr/SEE-THIS/, 'proxy request'); |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
124 like(http_get('/'), qr/SEE-THIS/, 'second request'); |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
125 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
126 # make sure backend isn't switched off after |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
127 # proxy_next_upstream http_404 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
128 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
129 like(http_get('/ok') . http_get('/ok'), qr/AND-THIS/, 'not down'); |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
130 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
131 # next upstream on http_500 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
132 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
133 like(http_get('/500'), qr/SEE-THIS/, 'request 500'); |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
134 like(http_get('/500'), qr/SEE-THIS/, 'request 500 second'); |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
135 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
136 # make sure backend switched off with http_500 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
137 |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
138 unlike(http_get('/ok') . http_get('/ok'), qr/AND-THIS/, 'down after 500'); |
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
139 |
351
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
140 # make sure all backends are tried once |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
141 |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
142 like(http_get('/all/rr'), |
952
e9064d691790
Tests: converted tests to run in parallel.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
351
diff
changeset
|
143 qr/^127.0.0.1:($p1, 127.0.0.1:$p2|$p2, 127.0.0.1:$p1)$/mi, |
351
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
144 'all tried once'); |
3d3c8b5ea8ee
Tests: improved proxy_next_upstream tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
288
diff
changeset
|
145 |
1632
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
146 # make sure backend marked as down doesn't count towards "no live upstreams" |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
147 # after all backends are tried with http_404 |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
148 |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
149 like(http_get('/down/'), qr/Not Found/, 'all tried with down'); |
da1325cb1c39
Tests: added proxy_next_upstream test with "down".
Sergey Kandaurov <pluknet@nginx.com>
parents:
974
diff
changeset
|
150 |
288
56157712d744
Tests: proxy_next_upstream tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
151 ############################################################################### |