view ssi_waited.t @ 1859:5f46af4707e7

Tests: fixed server_tokens tests for build names with spaces. Build names can contain spaces, and previously used pattern, "--build=(\S+)", failed to properly match such build names. Instead, now we simply test that some build name is provided in the Server header and error pages. Further, the $t->has_module() method is now used to check if a build name is set instead of directly testing the $t->{_configure_args} internal field.
author Maxim Dounin <mdounin@mdounin.ru>
date Thu, 18 May 2023 18:07:04 +0300
parents 882267679006
children
line wrap: on
line source

#!/usr/bin/perl

# (C) Maxim Dounin

# Tests for nginx ssi module, waited subrequests.

###############################################################################

use warnings;
use strict;

use Test::More;

BEGIN { use FindBin; chdir($FindBin::Bin); }

use lib 'lib';
use Test::Nginx;

###############################################################################

select STDERR; $| = 1;
select STDOUT; $| = 1;

my $t = Test::Nginx->new()->has(qw/http ssi/)->plan(1);

$t->write_file_expand('nginx.conf', <<'EOF');

%%TEST_GLOBALS%%

daemon off;

events {
}

http {
    %%TEST_GLOBALS_HTTP%%

    server {
        listen       127.0.0.1:8080;
        server_name  localhost;
        location / {
            ssi on;
        }
    }
}

EOF

$t->write_file('index.html', 'x<!--#include virtual="/first.html" -->' .
	'x<!--#include virtual="/second.html" -->x');
$t->write_file('first.html', 'FIRST');
$t->write_file('second.html',
	'<!--#include virtual="/waited.html" wait="yes"-->xSECOND');
$t->write_file('waited.html', 'WAITED');

$t->run();

###############################################################################

like(http_get('/'), qr/^xFIRSTxWAITEDxSECONDx$/m, 'waited non-active');

###############################################################################