Your IP : 216.73.216.74


Current Path : /usr/share/doc/perl-Test-LeakTrace/t/
Upload File :
Current File : //usr/share/doc/perl-Test-LeakTrace/t/11_logfp.t

#!/usr/bin/perl -w

use strict;
use Test::More tests => 16;

use Test::LeakTrace qw(:util);

my $content = '';

sub t{
	open local(*STDERR), '>', \$content;

	leaktrace{
		my @array;
		push @array, 42, \@array;
	} shift;
}

$\ = 'rs';
$_ = 'defsv';

my $file = __FILE__;
t(-simple);
like $content,   qr/from \Q$file\E line 15\./, -simple;
unlike $content, qr/15:\t\tpush \@array/, -lines;
unlike $content, qr/REFCNT/, -sv_dump;

t(-lines);
like $content, qr/from \Q$file\E line 15\./, -simple;
like $content, qr/15:\t\tpush \@array/, -lines;
unlike $content, qr/REFCNT/, -sv_dump;

t(-sv_dump);
like $content, qr/from \Q$file\E line 15\./, -simple;
unlike $content, qr/15:\t\tpush \@array/, -lines;
like $content, qr/REFCNT/, -sv_dump;

t(-verbose);
like $content, qr/from \Q$file\E line 15\./, -simple;
like $content, qr/15:\t\tpush \@array/, -lines;
like $content, qr/REFCNT/, -sv_dump;

t(-silent);
is $content, '', -silent;

eval{
	t(sub{ die });
};
is $content, '', 'died in callback';

is $\, 'rs',    '$\ is not affected';
is $_, 'defsv', '$_ is not affected';