comparison limit_req_dry_run.t @ 1531:65eb942993ad

Tests: added $limit_req_status not found tests.
author Sergey Kandaurov <pluknet@nginx.com>
date Tue, 19 Nov 2019 19:35:00 +0300
parents c1cdd7c73a73
children 5ac6efbe5552
comparison
equal deleted inserted replaced
1530:c1cdd7c73a73 1531:65eb942993ad
36 http { 36 http {
37 %%TEST_GLOBALS_HTTP%% 37 %%TEST_GLOBALS_HTTP%%
38 38
39 limit_req_zone $binary_remote_addr zone=one:1m rate=1r/m; 39 limit_req_zone $binary_remote_addr zone=one:1m rate=1r/m;
40 40
41 log_format test $uri:$limit_req_status;
42
41 server { 43 server {
42 listen 127.0.0.1:8080; 44 listen 127.0.0.1:8080;
43 server_name localhost; 45 server_name localhost;
44 46
45 limit_req_dry_run on; 47 limit_req_dry_run on;
46 add_header X-Status $limit_req_status always; 48 add_header X-Status $limit_req_status always;
49 access_log %%TESTDIR%%/test.log test;
47 50
48 location /delay { 51 location /delay {
49 limit_req zone=one burst=2; 52 limit_req zone=one burst=2;
50 } 53 }
51 54
56 location /reject/off { 59 location /reject/off {
57 limit_req zone=one; 60 limit_req zone=one;
58 61
59 limit_req_dry_run off; 62 limit_req_dry_run off;
60 } 63 }
64
65 location / { }
61 } 66 }
62 } 67 }
63 68
64 EOF 69 EOF
65 70
66 $t->write_file('delay', 'SEE-THIS'); 71 $t->write_file('delay', 'SEE-THIS');
67 $t->write_file('reject', 'SEE-THIS'); 72 $t->write_file('reject', 'SEE-THIS');
68 $t->try_run('no limit_req_dry_run/limit_req_status')->plan(6); 73 $t->try_run('no limit_req_dry_run/limit_req_status')->plan(8);
69 74
70 ############################################################################### 75 ###############################################################################
71 76
72 like(http_get('/delay'), qr/ 200 .*PASSED/ms, 'dry run - passed'); 77 like(http_get('/delay'), qr/ 200 .*PASSED/ms, 'dry run - passed');
73 like(http_get('/delay'), qr/ 200 .*DELAYED_DRY_RUN/ms, 'dry run - delayed'); 78 like(http_get('/delay'), qr/ 200 .*DELAYED_DRY_RUN/ms, 'dry run - delayed');
74 like(http_get('/reject'), qr/ 200 .*REJECTED_DRY_RUN/ms, 'dry run - rejected'); 79 like(http_get('/reject'), qr/ 200 .*REJECTED_DRY_RUN/ms, 'dry run - rejected');
75 80
76 like(http_get('/reject/off'), qr/ 503 .*REJECTED/ms, 'dry run off - rejected'); 81 like(http_get('/reject/off'), qr/ 503 .*REJECTED/ms, 'dry run off - rejected');
77 82
83 unlike(http_get('/'), qr/X-Status/, 'no limit');
84
78 $t->stop(); 85 $t->stop();
79 86
80 like($t->read_file('error.log'), qr/delaying request, dry/, 'log - delay'); 87 like($t->read_file('error.log'), qr/delaying request, dry/, 'log - delay');
81 like($t->read_file('error.log'), qr/limiting requests, dry/, 'log - reject'); 88 like($t->read_file('error.log'), qr/limiting requests, dry/, 'log - reject');
82 89
90 like($t->read_file('test.log'), qr|^/:-|m, 'log - not found');
91
83 ############################################################################### 92 ###############################################################################