t/filter/case.t (31 lines of code) (raw):
use strict;
use warnings FATAL => 'all';
use Apache::Test;
use Apache::TestRequest;
#test output of some other modules
my %urls = (
mod_php4 => '/php/hello.php',
mod_cgi => '/modules/cgi/perl.pl',
mod_test_rwrite => '/test_rwrite',
mod_alias => '/getfiles-perl-pod/perlsub.pod', # requires perl-doc on Ubuntu
);
my @filter = ('X-AddOutputFilter' => 'CaseFilter'); #mod_client_add_filter
for my $module (keys %urls) {
delete $urls{$module} unless have_module($module);
}
my $tests = 1 + scalar keys %urls;
plan tests => $tests, need_module 'case_filter';
verify(GET '/', @filter);
for my $module (sort keys %urls) {
my $r = GET $urls{$module}, @filter;
print "# testing $module with $urls{$module}\n";
print "# expected 200\n";
print "# received ".$r->code."\n";
print "# body: ".$r->content."\n";
verify($r);
}
sub verify {
my $r = shift;
my $body = $r->content;
ok $r->code == 200 and $body
and $body =~ /[A-Z]/ and $body !~ /[a-z]/;
}