X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=FS-Test%2Flib%2FFS%2FTest.pm;h=bc97977797e7973ea6355baaa380b4571c8a8c13;hp=445fdb62c9e6f6bc0b42b56d210e3c7d0e7c8e74;hb=e949bed143088a77ba89a56ff2a25609a1050159;hpb=b25efe03cc7945773363ba74e2012646c258a1b5 diff --git a/FS-Test/lib/FS/Test.pm b/FS-Test/lib/FS/Test.pm index 445fdb62c..bc9797779 100644 --- a/FS-Test/lib/FS/Test.pm +++ b/FS-Test/lib/FS/Test.pm @@ -4,14 +4,15 @@ use 5.006; use strict; use warnings FATAL => 'all'; -use File::ShareDir 'dist_dir'; +#use File::ShareDir 'dist_dir'; use WWW::Mechanize; use File::chdir; use URI; use File::Slurp qw(write_file); use Class::Accessor 'antlers'; +use File::Spec; -our $VERSION = '0.01'; +our $VERSION = '0.02'; =head1 NAME @@ -29,7 +30,11 @@ database image, the test plan, and probably other stuff. =cut sub share_dir { - dist_dir('FS-Test') +# dist_dir('FS-Test') +# we no longer install this anywhere + my @dirs = File::Spec->splitdir(File::Spec->rel2abs(__FILE__)); + splice @dirs, -3; # lib/FS/Test.pm + File::Spec->catdir( @dirs, 'share' ); } =item new OPTIONS @@ -124,7 +129,7 @@ sub fetch { my $uri = URI->new( $self->fsurl . '/' . $path); print $uri->path; my $response = $self->mech->get($uri); - print " - " . $response->code . "\n"; + print " - " . $self->mech->status . "\n"; next unless $response->is_success; local $CWD; @@ -147,7 +152,17 @@ sub fetch { push @CWD, $dir; } write_file($file, {binmode => ':utf8'}, $response->decoded_content); + + # Detect Mason errors and make noise about them; they're presumably + # _never_ correct. Mason errors have one convenient property: there's no + # element on the page. + if ( $self->mech->ct eq 'text/html' and !$self->mech->title ) { + print "***error***\n"; + } } } +# what we don't do in here is diff the results. +# Test::HTML::Differences from CPAN would be one way to do that. + 1; # End of FS::Test