summaryrefslogtreecommitdiffstats
path: root/debian/perl-framework/t/ssl/http.t
diff options
context:
space:
mode:
Diffstat (limited to 'debian/perl-framework/t/ssl/http.t')
-rw-r--r--debian/perl-framework/t/ssl/http.t48
1 files changed, 48 insertions, 0 deletions
diff --git a/debian/perl-framework/t/ssl/http.t b/debian/perl-framework/t/ssl/http.t
new file mode 100644
index 0000000..e556224
--- /dev/null
+++ b/debian/perl-framework/t/ssl/http.t
@@ -0,0 +1,48 @@
+use strict;
+use warnings FATAL => 'all';
+use Apache::Test;
+use Apache::TestRequest;
+use Apache::TestUtil;
+
+BEGIN {
+ # prevent TestRequest from croaking on an HTTP/0.9 response
+ $ENV{APACHE_TEST_HTTP_09_OK} = 1;
+}
+
+#verify we can send an non-ssl http request to the ssl port
+#without dumping core.
+
+my $url = '/index.html';
+
+my @todo;
+
+if (Apache::TestConfig::WIN32) {
+ print "\n#ap_core_translate() chokes on ':' here\n",
+ "#where r->uri = /mod_ssl:error:HTTP-request\n";
+ @todo = (todo => [2]);
+}
+
+plan tests => 2, @todo, need_lwp;
+
+my $config = Apache::Test::config();
+my $ssl_module = $config->{vars}->{ssl_module_name};
+my $hostport = $config->{vhosts}->{$ssl_module}->{hostport};
+my $rurl = "http://$hostport$url";
+
+my $res = GET($rurl);
+my $proto = $res->protocol;
+
+if ($proto and $proto eq "HTTP/0.9") {
+ skip "server gave HTTP/0.9 response";
+} else {
+ ok t_cmp($res->code,
+ 400,
+ "Expected bad request from 'GET $rurl'"
+ );
+}
+
+ok t_cmp($res->content,
+ qr{speaking plain HTTP to an SSL-enabled server port},
+ "that error document contains the proper hint"
+ );
+