# Before `make install' is performed this script should be runnable with # `make test'. After `make install' it should work as `perl test.pl' ######################### # change 'tests => 1' to 'tests => last_test_to_print'; use Apache::Test qw(plan ok have_lwp); use Apache::TestRequest qw(GET); use Apache::TestUtil qw(t_cmp); plan tests => 8, have_lwp; # Basic request for(1..2) { my $response = GET '/test/module/'; if(!$response->is_success) { ok(0); print STDERR "Received failure code: " . $response->code . "\n"; } else { ok(1); } } # Test ##UNPACKDIR## for(1..2) { my $response = GET '/test/module/'; if(!$response->is_success) { ok(0); print STDERR "Received failure code: " . $response->code . "\n"; } else { my $content = $response->content; ok t_cmp(qr/FILE: GOT FILE/, $content); } } # Test extra_path_info for (1..2) { $response = GET '/test/path/JAPH'; if(!$response->is_success) { ok(0); print STDERR "Received failure code: " . $response->code . "\n"; } else { my $content = $response->content; ok t_cmp('/JAPH', $content); } } use Archive::Zip; my $module_zip = Archive::Zip->new('par/module.par'); my $lib_member = $module_zip->removeMember('lib/TestMod.pm'); my $contents = $lib_member->contents(); my $contents_save = $contents; $contents =~ s/Perl\sModule/TEST CHANGES/; $lib_member->contents($contents); $module_zip->addMember($lib_member); $module_zip->overwrite(); undef $lib_member; undef $module_zip; sleep 2; for(1..2) { my $response = GET '/test/module/'; if(!$response->is_success) { ok(0); print STDERR "Received failure code: " . $response->code . "\n"; } else { my $contents_check = $response->content; if( $contents_check =~ /TEST\sCHANGES/ ) { ok(1); } else { ok(0); } } } my $newmodule_zip = Archive::Zip->new('par/module.par'); $lib_member = $newmodule_zip->removeMember('lib/TestMod.pm'); my $contents_new = $lib_member->contents(); $lib_member->contents($contents_save); $newmodule_zip->addMember($lib_member); $newmodule_zip->overwrite(); undef $newmodule_zip;