Data-Dump-Streamer
view release on metacpan or search on metacpan
$expect
);
}
{
use utf8;
my $r= "\x{100}\x{101}\x{102}";
test_dump({
name => "Unicode qr// and string",
no_dumper => 1,
verbose => 1
},
$o,
($r),
<<'EXPECT',);
$VAR1 = "\x{100}\x{101}\x{102}";
EXPECT
}
{
use warnings FATAL => 'all';
my $r= "Günter";
test_dump({
name => "Non unicode, high char",
verbose => 1
},
$o,
($r),
<<'EXPECT',);
$VAR1 = "G\374nter";
EXPECT
}
{
my $dv= dualvar(unpack('N', 'JAPH'), 'JAPH');
test_dump({
name => "Dualvars(0) ",
verbose => 1
},
$o->Dualvars(0),
($dv),
<<'EXPECT',);
$VAR1 = 'JAPH';
EXPECT
test_dump({
name => "Dualvars(1)",
verbose => 1
},
$o->Dualvars(1),
($dv),
<<'EXPECT',);
$VAR1 = dualvar( 1245794376, 'JAPH' );
EXPECT
}
{
my ($x, %y, @z);
$x= \@z;
our $global= \@z;
my $res1= Dump($x, \%y, \@z)->Names(qw(x *y *z))->Out();
my $res3= DumpVars(x => $x, -y => \%y, -z => \@z)->Out();
is($res1, $res3, 'DumpVars');
SKIP: {
skip "needs PadWalker 0.99 or later", 3
if !eval "use PadWalker 0.99; 1";
my $res2= DumpLex($x, \%y, \@z)->Out();
is($res1, $res2, 'DumpLex');
is($res2, $res3, 'DumpLex eq DumpVars');
is("" . DumpLex($x, $global)->Out(), <<'EXPECT', 'DumpLex w/global');
$x = [];
$global = $x;
EXPECT
}
}
SKIP: {
skip "needs Compress::Zlib and MIME::Base64", 2
if !eval "use Compress::Zlib; use MIME::Base64; 1";
my $str= "a" x 1000;
my $i= bless \$str, "Fnorble";
my $rep= MIME::Base64::encode(Compress::Zlib::compress($str, 9), "");
$o->Compress(-1);
my $out= $o->Data($i)->Out();
(my $expect= <<'EXPECT') =~ s/XXX/$rep/;
use Data::Dump::Streamer qw(usqz);
$Fnorble1 = bless( \do { my $v = usqz('XXX') }, 'Fnorble' );
EXPECT
is($out, $expect, "Compress literal");
$o->OptSpace("");
$out= $o->Data($i)->Out();
($expect= <<'EXPECT') =~ s/XXX/$rep/;
use Data::Dump::Streamer qw(usqz);
$Fnorble1=bless(\do{my$v=usqz('XXX')},'Fnorble');
EXPECT
is($out, $expect, "Optspace");
$o->Compress(0);
}
{
my $h= { '-' => 1, '-1efg' => 1 };
$o->OptSpace("");
same("'-' hashkeys", $o, <<'EXPECT', ($h));
$HASH1={
"-1efg"=>1,
"-" =>1
};
EXPECT
}
# with eval testing
{
my $h= { "blah\n" => 1, "blah\nblah\n" => 2, "blahblahblah\n\n" => 3 };
same("hashkeys with newlines", $o, <<'EXPECT', ($h));
$HASH1={
"blah\n" =>1,
"blah\nblah\n" =>2,
"blahblahblah\n\n"=>3
};
EXPECT
}
__END__
# with eval testing
{
same( "", $o, <<'EXPECT', ( ) );
( run in 1.822 second using v1.01-cache-2.11-cpan-39bf76dae61 )