Mercurial > hg > nginx-tests
comparison js_subrequests.t @ 1543:0b97d431571f
Tests: get rid of outdated API in js_subrequest.t.
author | Dmitry Volyntsev <xeioex@nginx.com> |
---|---|
date | Thu, 16 Jan 2020 19:15:24 +0300 |
parents | 41dcbcf3381a |
children | 53ed2231403b |
comparison
equal
deleted
inserted
replaced
1542:451e787aad76 | 1543:0b97d431571f |
---|---|
243 function sr(r) { | 243 function sr(r) { |
244 subrequest_fn(r, ['/p/sub2'], ['uri', 'status']) | 244 subrequest_fn(r, ['/p/sub2'], ['uri', 'status']) |
245 } | 245 } |
246 | 246 |
247 function sr_args(r) { | 247 function sr_args(r) { |
248 r.subrequest('/p/sub1', 'h=xxx', function(reply) { | 248 r.subrequest('/p/sub1', 'h=xxx', reply => { |
249 r.status = 200; | 249 r.return(200, JSON.stringify({h:reply.headersOut.h})); |
250 r.sendHeader(); | |
251 r.send(JSON.stringify({h:reply.headersOut.h})) | |
252 r.finish(); | |
253 }); | 250 }); |
254 } | 251 } |
255 | 252 |
256 function sr_options_args(r) { | 253 function sr_options_args(r) { |
257 r.subrequest('/p/sub1', {args:'h=xxx'}, function(reply) { | 254 r.subrequest('/p/sub1', {args:'h=xxx'}, reply => { |
258 r.status = 200; | 255 r.return(200, JSON.stringify({h:reply.headersOut.h})); |
259 r.sendHeader(); | |
260 r.send(JSON.stringify({h:reply.headersOut.h})) | |
261 r.finish(); | |
262 }); | 256 }); |
263 } | 257 } |
264 | 258 |
265 function sr_options_method(r) { | 259 function sr_options_method(r) { |
266 r.subrequest('/p/method', {method:r.args.m}, body_fwd_cb); | 260 r.subrequest('/p/method', {method:r.args.m}, body_fwd_cb); |
267 } | 261 } |
268 | 262 |
269 function sr_options_body(r) { | 263 function sr_options_body(r) { |
270 r.subrequest('/p/body', {method:'POST', body:'["REQ-BODY"]'}, | 264 r.subrequest('/p/body', {method:'POST', body:'["REQ-BODY"]'}, |
271 body_fwd_cb); | 265 body_fwd_cb); |
272 } | 266 } |
273 | 267 |
274 function sr_options_method_head(r) { | 268 function sr_options_method_head(r) { |
275 r.subrequest('/p/method', {method:'HEAD'}, function(reply) { | 269 r.subrequest('/p/method', {method:'HEAD'}, reply => { |
276 r.status = 200; | 270 r.return(200, JSON.stringify({c:reply.status, |
277 r.sendHeader(); | 271 s:reply.responseBody.length})); |
278 r.send(JSON.stringify({c:reply.status, | |
279 s:reply.responseBody.length})) | |
280 r.finish(); | |
281 }); | 272 }); |
282 } | 273 } |
283 | 274 |
284 function sr_body(r) { | 275 function sr_body(r) { |
285 r.subrequest('/p/sub1', body_fwd_cb); | 276 r.subrequest('/p/sub1', body_fwd_cb); |
292 function sr_background(r) { | 283 function sr_background(r) { |
293 r.subrequest('/p/background'); | 284 r.subrequest('/p/background'); |
294 r.subrequest('/p/background', 'a=xxx'); | 285 r.subrequest('/p/background', 'a=xxx'); |
295 r.subrequest('/p/background', {args: 'a=yyy', method:'POST'}); | 286 r.subrequest('/p/background', {args: 'a=yyy', method:'POST'}); |
296 | 287 |
297 r.status = 200; | 288 r.return(200); |
298 r.sendHeader(); | |
299 r.finish(); | |
300 } | 289 } |
301 | 290 |
302 function body(r) { | 291 function body(r) { |
303 r.status = 200; | 292 r.return(200, r.variables.request_body); |
304 r.sendHeader(); | |
305 r.send(r.variables.request_body); | |
306 r.finish(); | |
307 } | 293 } |
308 | 294 |
309 function delayed(r) { | 295 function delayed(r) { |
310 setTimeout(function(r) { | 296 setTimeout(r => r.return(200), 100, r); |
311 r.status = 200; | |
312 r.sendHeader(); | |
313 r.finish(); | |
314 }, 100, r); | |
315 } | 297 } |
316 | 298 |
317 function background(r) { | 299 function background(r) { |
318 r.log("BACKGROUND: " + r.variables.request_method | 300 r.log("BACKGROUND: " + r.variables.request_method |
319 + " args: " + r.variables.args); | 301 + " args: " + r.variables.args); |
320 | 302 |
321 r.status = 200; | 303 r.return(200); |
322 r.sendHeader(); | |
323 r.finish(); | |
324 } | 304 } |
325 | 305 |
326 function sr_in_variable_handler(r) { | 306 function sr_in_variable_handler(r) { |
327 } | 307 } |
328 | 308 |
329 function async_var(r) { | 309 function async_var(r) { |
330 r.subrequest('/p/delayed', function(reply) { | 310 r.subrequest('/p/delayed', reply => { |
331 r.status = 200; | 311 r.return(200, JSON.stringify(["CB-VAR"])); |
332 r.sendHeader(); | 312 }); |
333 r.send(JSON.stringify(["CB-VAR"])) | |
334 r.finish(); | |
335 }) | |
336 | 313 |
337 return ""; | 314 return ""; |
338 } | 315 } |
339 | 316 |
340 function sr_file(r) { | 317 function sr_file(r) { |
348 function sr_unavail(req) { | 325 function sr_unavail(req) { |
349 subrequest_fn(req, ['/unavail'], ['uri', 'status']); | 326 subrequest_fn(req, ['/unavail'], ['uri', 'status']); |
350 } | 327 } |
351 | 328 |
352 function sr_broken(r) { | 329 function sr_broken(r) { |
353 r.subrequest('/daemon/unfinished', | 330 r.subrequest('/daemon/unfinished', reply => { |
354 function(reply) { | 331 r.return(200, JSON.stringify({code:reply.status})); |
355 r.status = 200; | 332 }); |
356 r.sendHeader(); | |
357 r.send(JSON.stringify({code:reply.status})) | |
358 r.finish(); | |
359 }); | |
360 } | 333 } |
361 | 334 |
362 function sr_too_large(r) { | 335 function sr_too_large(r) { |
363 r.subrequest('/too_large/t', body_fwd_cb); | 336 r.subrequest('/too_large/t', body_fwd_cb); |
364 } | 337 } |
403 } | 376 } |
404 | 377 |
405 function subrequest_fn(r, subs, props) { | 378 function subrequest_fn(r, subs, props) { |
406 var rep, replies = []; | 379 var rep, replies = []; |
407 | 380 |
408 subs.forEach(function(sr) { | 381 subs.forEach(sr => { |
409 r.subrequest(sr, function(reply) { | 382 r.subrequest(sr, reply => { |
410 r.log("subrequest handler: " + reply.uri | 383 r.log("subrequest handler: " + reply.uri |
411 + " status: " + reply.status) | 384 + " status: " + reply.status) |
412 | 385 |
413 rep = {}; | 386 rep = {}; |
414 props.forEach(function (p) {rep[p] = reply[p]}); | 387 props.forEach(p => {rep[p] = reply[p]}); |
415 | 388 |
416 replies.push(rep); | 389 replies.push(rep); |
417 | 390 |
418 if (replies.length == subs.length) { | 391 if (replies.length == subs.length) { |
419 r.status = 200; | 392 r.return(200, JSON.stringify(replies)); |
420 r.sendHeader(); | |
421 r.send(JSON.stringify(replies)); | |
422 r.finish(); | |
423 } | 393 } |
424 }); | 394 }); |
425 }); | 395 }); |
426 } | 396 } |
427 | 397 |
428 function sr_except_not_a_func(r) { | 398 function sr_except_not_a_func(r) { |
429 r.subrequest('/sub1', 'a=1', 'b'); | 399 r.subrequest('/sub1', 'a=1', 'b'); |
430 } | 400 } |
431 | 401 |
432 function sr_except_failed_to_convert_arg(r) { | 402 function sr_except_failed_to_convert_arg(r) { |
433 r.subrequest('/sub1', r.args, function(){}); | 403 r.subrequest('/sub1', r.args, ()=>{}); |
434 } | 404 } |
435 | 405 |
436 function sr_except_failed_to_convert_options_arg(r) { | 406 function sr_except_failed_to_convert_options_arg(r) { |
437 r.subrequest('/sub1', {args:r.args}, function(){}); | 407 r.subrequest('/sub1', {args:r.args}, ()=>{}); |
438 } | 408 } |
439 | 409 |
440 function sr_uri_except(r) { | 410 function sr_uri_except(r) { |
441 r.subrequest(r, 'a=1', 'b'); | 411 r.subrequest(r, 'a=1', 'b'); |
442 } | 412 } |
443 | 413 |
444 function body_fwd_cb(reply) { | 414 function body_fwd_cb(r) { |
445 var p = reply.parent; | 415 r.parent.return(200, JSON.stringify(JSON.parse(r.responseBody))); |
446 p.status = 200; | |
447 p.sendHeader(); | |
448 p.send(JSON.stringify(JSON.parse(reply.responseBody))); | |
449 p.finish(); | |
450 } | 416 } |
451 | 417 |
452 function js_sub(r) { | 418 function js_sub(r) { |
453 r.status = 200; | 419 r.return(200, '["JS-SUB"]'); |
454 r.sendHeader(); | |
455 r.send('["JS-SUB"]'); | |
456 r.finish(); | |
457 } | 420 } |
458 | 421 |
459 EOF | 422 EOF |
460 | 423 |
461 $t->write_file('t', '["SEE-THIS"]'); | 424 $t->write_file('t', '["SEE-THIS"]'); |