Mercurial > hg > nginx-tests
comparison stream_js.t @ 1643:cd35d4f44937
Tests: fixed typo in stream_js.t introduced in fd7766ab0a69.
In addition, tests were added to catch proper exit status.
author | Dmitry Volyntsev <xeioex@nginx.com> |
---|---|
date | Wed, 03 Feb 2021 12:20:37 +0000 |
parents | f3ba4c74de31 |
children | 9e0347f4df11 |
comparison
equal
deleted
inserted
replaced
1642:43f31fe62dfd | 1643:cd35d4f44937 |
---|---|
68 js_set $js_req_line js_req_line; | 68 js_set $js_req_line js_req_line; |
69 js_set $js_sess_unk js_sess_unk; | 69 js_set $js_sess_unk js_sess_unk; |
70 | 70 |
71 js_include test.js; | 71 js_include test.js; |
72 | 72 |
73 log_format status $server_port:$status; | |
74 | |
73 server { | 75 server { |
74 listen 127.0.0.1:8080; | 76 listen 127.0.0.1:8080; |
75 return $js_addr; | 77 return $js_addr; |
76 } | 78 } |
77 | 79 |
110 | 112 |
111 server { | 113 server { |
112 listen 127.0.0.1:8087; | 114 listen 127.0.0.1:8087; |
113 js_access js_access_undecided; | 115 js_access js_access_undecided; |
114 return OK; | 116 return OK; |
117 access_log %%TESTDIR%%/status.log status; | |
115 } | 118 } |
116 | 119 |
117 server { | 120 server { |
118 listen 127.0.0.1:8088; | 121 listen 127.0.0.1:8088; |
119 js_access js_access_allow; | 122 js_access js_access_allow; |
120 return OK; | 123 return OK; |
124 access_log %%TESTDIR%%/status.log status; | |
121 } | 125 } |
122 | 126 |
123 server { | 127 server { |
124 listen 127.0.0.1:8089; | 128 listen 127.0.0.1:8089; |
125 js_access js_access_deny; | 129 js_access js_access_deny; |
126 return OK; | 130 return OK; |
131 access_log %%TESTDIR%%/status.log status; | |
127 } | 132 } |
128 | 133 |
129 server { | 134 server { |
130 listen 127.0.0.1:8091; | 135 listen 127.0.0.1:8091; |
131 js_preread js_preread_async; | 136 js_preread js_preread_async; |
253 if (s.remoteAddress.match('127.0.0.1')) { | 258 if (s.remoteAddress.match('127.0.0.1')) { |
254 s.done(); | 259 s.done(); |
255 return; | 260 return; |
256 } | 261 } |
257 | 262 |
258 s.abort(); | 263 s.deny(); |
259 } | 264 } |
260 | 265 |
261 function js_access_deny(s) { | 266 function js_access_deny(s) { |
262 if (s.remoteAddress.match('127.0.0.1')) { | 267 if (s.remoteAddress.match('127.0.0.1')) { |
263 s.abort(); | 268 s.deny(); |
264 return; | 269 return; |
265 } | 270 } |
266 | 271 |
267 s.allow(); | 272 s.allow(); |
268 } | 273 } |
352 } | 357 } |
353 | 358 |
354 EOF | 359 EOF |
355 | 360 |
356 $t->run_daemon(\&stream_daemon, port(8090)); | 361 $t->run_daemon(\&stream_daemon, port(8090)); |
357 $t->try_run('no stream njs available')->plan(19); | 362 $t->try_run('no stream njs available')->plan(22); |
358 $t->waitforsocket('127.0.0.1:' . port(8090)); | 363 $t->waitforsocket('127.0.0.1:' . port(8090)); |
359 | 364 |
360 ############################################################################### | 365 ############################################################################### |
361 | 366 |
362 is(stream('127.0.0.1:' . port(8080))->read(), 'addr=127.0.0.1', | 367 is(stream('127.0.0.1:' . port(8080))->read(), 'addr=127.0.0.1', |
393 ok(index($t->read_file('error.log'), 'at fs.readFileSync') > 0, | 398 ok(index($t->read_file('error.log'), 'at fs.readFileSync') > 0, |
394 'stream js_preread backtrace'); | 399 'stream js_preread backtrace'); |
395 ok(index($t->read_file('error.log'), 'at js_filter_except') > 0, | 400 ok(index($t->read_file('error.log'), 'at js_filter_except') > 0, |
396 'stream js_filter backtrace'); | 401 'stream js_filter backtrace'); |
397 | 402 |
403 my @p = (port(8087), port(8088), port(8089)); | |
404 like($t->read_file('status.log'), qr/$p[0]:200/, 'status undecided'); | |
405 like($t->read_file('status.log'), qr/$p[1]:200/, 'status allow'); | |
406 like($t->read_file('status.log'), qr/$p[2]:403/, 'status deny'); | |
407 | |
398 ############################################################################### | 408 ############################################################################### |
399 | 409 |
400 sub stream_daemon { | 410 sub stream_daemon { |
401 my $server = IO::Socket::INET->new( | 411 my $server = IO::Socket::INET->new( |
402 Proto => 'tcp', | 412 Proto => 'tcp', |