ssi_waited.t 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #!/usr/bin/perl
  2. # (C) Maxim Dounin
  3. # Tests for nginx ssi module, waited subrequests.
  4. ###############################################################################
  5. use warnings;
  6. use strict;
  7. use Test::More;
  8. BEGIN { use FindBin; chdir($FindBin::Bin); }
  9. use lib 'lib';
  10. use Test::Nginx;
  11. ###############################################################################
  12. select STDERR; $| = 1;
  13. select STDOUT; $| = 1;
  14. my $t = Test::Nginx->new()->has(qw/http ssi/)->plan(2);
  15. $t->write_file_expand('nginx.conf', <<'EOF');
  16. %%TEST_GLOBALS%%
  17. master_process off;
  18. daemon off;
  19. events {
  20. }
  21. http {
  22. %%TEST_GLOBALS_HTTP%%
  23. server {
  24. listen 127.0.0.1:8080;
  25. server_name localhost;
  26. location / {
  27. ssi on;
  28. }
  29. }
  30. }
  31. EOF
  32. $t->write_file('index.html', 'x<!--#include virtual="/first.html" -->' .
  33. 'x<!--#include virtual="/second.html" -->x');
  34. $t->write_file('first.html', 'FIRST');
  35. $t->write_file('second.html',
  36. '<!--#include virtual="/waited.html" wait="yes"-->xSECOND');
  37. $t->write_file('waited.html', 'WAITED');
  38. $t->run();
  39. ###############################################################################
  40. like(http_get('/'), qr/^xFIRSTxWAITEDxSECONDx$/m, 'waited non-active');
  41. like(`grep -F '[alert]' ${\($t->testdir())}/error.log`, qr/^$/s, 'no alerts');
  42. ###############################################################################