X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Flib%2FTestApp%2FView%2FDump.pm;h=016df8116ae8d0b32da943a3c64e4654ef085837;hb=fe82a51db5b44026493ce2a6e05c0f233ddfb4dd;hp=a59e417ef90225e40818b8ab8bd69488f82ea2b0;hpb=c3fd63d4399bec38e1cd6ac94b4aed8ba61966b8;p=catagits%2FCatalyst-Runtime.git diff --git a/t/lib/TestApp/View/Dump.pm b/t/lib/TestApp/View/Dump.pm index a59e417..016df81 100644 --- a/t/lib/TestApp/View/Dump.pm +++ b/t/lib/TestApp/View/Dump.pm @@ -7,23 +7,26 @@ use Data::Dumper (); use Scalar::Util qw(blessed weaken); sub dump { - my ( $self, $reference ) = @_; + my ( $self, $reference, $purity ) = @_; return unless $reference; + $purity = defined $purity ? $purity : 1; + my $dumper = Data::Dumper->new( [$reference] ); $dumper->Indent(1); - $dumper->Purity(1); + $dumper->Purity($purity); $dumper->Useqq(0); $dumper->Deepcopy(1); - $dumper->Quotekeys(0); + $dumper->Quotekeys(1); $dumper->Terse(1); + local $SIG{ __WARN__ } = sub { warn unless $_[ 0 ] =~ m{dummy} }; return $dumper->Dump; } sub process { - my ( $self, $c, $reference ) = @_; + my ( $self, $c, $reference, $purity ) = @_; # Force processing of on-demand data $c->prepare_body; @@ -36,8 +39,14 @@ sub process { # Remove context from reference if needed my $context = delete $reference->{_context}; + my $env = delete $reference->{env}; + + if (my $log = $reference->{_log}) { + $log->clear_psgi if ($log->can('psgienv')); + } + if ( my $output = - $self->dump( $reference ) ) + $self->dump( $reference, $purity ) ) { $c->res->headers->content_type('text/plain'); @@ -55,6 +64,8 @@ sub process { $reference->{_body} = $body; } + if($env) { $reference->{env} = $env } + return 1; }