From e239bfda8add9d7fd42dcd5f2e2bfc01eae9e824 Mon Sep 17 00:00:00 2001 From: gfx Date: Thu, 16 Sep 2010 20:36:07 +0900 Subject: Make leaktrace.t as a regular test --- perl/t/50_leaktrace.t | 58 +++++++++++++++++++++++++++++++++++++++++++++++ perl/xt/leaks/leaktrace.t | 50 ---------------------------------------- 2 files changed, 58 insertions(+), 50 deletions(-) create mode 100755 perl/t/50_leaktrace.t delete mode 100755 perl/xt/leaks/leaktrace.t diff --git a/perl/t/50_leaktrace.t b/perl/t/50_leaktrace.t new file mode 100755 index 0000000..2948527 --- /dev/null +++ b/perl/t/50_leaktrace.t @@ -0,0 +1,58 @@ +#!perl -w +use strict; +use Test::Requires { 'Test::LeakTrace' => 0.13 }; +use Test::More; + +use Data::MessagePack; + +my $simple_data = "xyz"; +my $complex_data = { + a => 'foo', + b => 42, + c => undef, + d => [qw(bar baz)], + e => 3.14, +}; + +note 'pack'; + +no_leaks_ok { + my $s = Data::MessagePack->pack($complex_data); +}; + +no_leaks_ok { + eval { Data::MessagePack->pack([\*STDIN]) }; + note $@; + $@ or warn "# it must die"; +}; + +note 'unpack'; + +my $s = Data::MessagePack->pack($simple_data); +my $c = Data::MessagePack->pack($complex_data); + +no_leaks_ok { + my $data = Data::MessagePack->unpack($s); +}; + +no_leaks_ok { + my $data = Data::MessagePack->unpack($c); +}; + +no_leaks_ok { + my $broken = $s; + chop $broken; + eval { Data::MessagePack->unpack($broken) }; + note $@; + $@ or warn "# it must die"; +}; + +note 'stream'; + +no_leaks_ok { + my $up = Data::MessagePack::Unpacker->new(); + $up->execute($c); + my $data = $up->data(); +}; + +done_testing; diff --git a/perl/xt/leaks/leaktrace.t b/perl/xt/leaks/leaktrace.t deleted file mode 100755 index 1836ad6..0000000 --- a/perl/xt/leaks/leaktrace.t +++ /dev/null @@ -1,50 +0,0 @@ -#!perl -w -use strict; -use Test::Requires 'Test::LeakTrace'; -use Test::More; - -use Data::MessagePack; - -my $simple_data = "xyz"; -my $complex_data = { - a => 'foo', - b => 42, - c => undef, - d => [qw(bar baz)], - e => 3.14, -}; - -note 'pack'; - -no_leaks_ok { - my $s = Data::MessagePack->pack($complex_data); -}; - -no_leaks_ok { - eval { Data::MessagePack->pack([\*STDIN]) }; - #note $@; - $@ or die "it must die"; -}; - -note 'unpack'; - -my $s = Data::MessagePack->pack($simple_data); -my $c = Data::MessagePack->pack($complex_data); - -no_leaks_ok { - my $data = Data::MessagePack->unpack($s); -}; - -no_leaks_ok { - my $data = Data::MessagePack->unpack($c); -}; - -no_leaks_ok { - my $broken = $s; - chop $broken; - eval { Data::MessagePack->unpack($broken) }; - #note $@; - $@ or die "it must die"; -}; - -done_testing; -- cgit v1.2.1