summaryrefslogtreecommitdiffstats
path: root/debian/perl-framework/t/protocol/nntp-like.t
diff options
context:
space:
mode:
Diffstat (limited to 'debian/perl-framework/t/protocol/nntp-like.t')
-rw-r--r--debian/perl-framework/t/protocol/nntp-like.t47
1 files changed, 47 insertions, 0 deletions
diff --git a/debian/perl-framework/t/protocol/nntp-like.t b/debian/perl-framework/t/protocol/nntp-like.t
new file mode 100644
index 0000000..9e5bb1f
--- /dev/null
+++ b/debian/perl-framework/t/protocol/nntp-like.t
@@ -0,0 +1,47 @@
+#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');
+ }
+}