X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=t%2Foptional_memleak.t;h=59e388c7d53c64e2bba863e915d375c84fe503be;hp=b712ec2a5d61ac185741f22c38940eeb3babd02e;hb=eefc03e12890c06c9a76d78b4d68e3b2ad781328;hpb=9b98464223828a695cc4aadcf597fb118c10b571 diff --git a/t/optional_memleak.t b/t/optional_memleak.t index b712ec2..59e388c 100644 --- a/t/optional_memleak.t +++ b/t/optional_memleak.t @@ -1,26 +1,30 @@ -#!perl - use strict; use warnings; +use Test::More; +BEGIN { + plan skip_all => 'set TEST_MEMLEAK to enable this test' + unless $ENV{TEST_MEMLEAK}; +} + use FindBin; use lib "$FindBin::Bin/lib"; - -use Test::More; use Catalyst::Test 'TestApp'; -use YAML; -eval "use Proc::ProcessTable"; -plan skip_all => 'set TEST_MEMLEAK to enable this test' - unless $ENV{TEST_MEMLEAK}; +eval "use Proc::ProcessTable"; plan skip_all => 'Proc::ProcessTable required for this test' if $@; -eval "use HTTP::Body 0.03"; -plan skip_all => 'HTTP::Body >= 0.03 required for this test' if $@; +use JSON::MaybeXS qw(decode_json); our $t = Proc::ProcessTable->new( cache_ttys => 1 ); our ( $initial, $final ) = ( 0, 0 ); -our $tests = YAML::LoadFile("$FindBin::Bin/optional_stress.yml"); +my $test_data = do { + open my $fh, '<:raw', "$FindBin::Bin/optional_stress.json" or die "$!"; + local $/; + <$fh>; +}; + +our $tests = decode_json($test_data); my $total_tests = 0; @@ -63,7 +67,7 @@ sub run_test { print "Final Size: $final\n"; if ( $final > $initial ) { - print "Leaked: " . ($final - $initial) . "\n"; + print "Leaked: " . ($final - $initial) . "K\n"; } is( $final, $initial, "'$uri' memory is not leaking" ); @@ -74,7 +78,7 @@ sub size_of { foreach my $p ( @{ $t->table } ) { if ( $p->pid == $pid ) { - return $p->size; + return $p->rss; } }