47 lines
1.4 KiB
Perl
47 lines
1.4 KiB
Perl
#testing that the server can respond right after client connects,
|
|
#before client sends any request data
|
|
|
|
use strict;
|
|
use warnings FATAL => 'all';
|
|
|
|
use Apache::Test;
|
|
use Apache::TestUtil;
|
|
use Apache::TestRequest;
|
|
|
|
my $tests = 5;
|
|
my $vars = Apache::Test::vars();
|
|
my @modules = qw(mod_nntp_like);
|
|
|
|
if (have_ssl && ! have_module('http2')) {
|
|
$tests *= 2;
|
|
unshift @modules, 'mod_nntp_like_ssl';
|
|
Apache::TestRequest::set_ca_cert();
|
|
}
|
|
|
|
plan tests => $tests, need('mod_nntp_like',
|
|
{ "deferred accept() prohibits testing with >=2.1.0 and OS $^O" =>
|
|
sub { !have_min_apache_version('2.1.0')
|
|
|| ($^O ne "linux" && $^O ne "darwin")} } );
|
|
|
|
for my $module (@modules) {
|
|
print "testing $module\n";
|
|
|
|
my $sock = Apache::TestRequest::vhost_socket($module);
|
|
ok $sock;
|
|
|
|
Apache::TestRequest::socket_trace($sock);
|
|
|
|
my $response = Apache::TestRequest::getline($sock);
|
|
|
|
$response =~ s/[\r\n]+$//;
|
|
ok t_cmp($response, '200 localhost - ready',
|
|
'welcome response');
|
|
|
|
for my $data ('LIST', 'GROUP dev.httpd.apache.org', 'ARTICLE 401') {
|
|
$sock->print("$data\n");
|
|
|
|
$response = Apache::TestRequest::getline($sock);
|
|
chomp($response) if (defined($response));
|
|
ok t_cmp($response, $data, 'echo');
|
|
}
|
|
}
|