X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=t%2Fv2-simple.t;h=37f9d6079fca7a2d1a9e44faf279416dedd6cd79;hb=34ac983862368c022af1ffe37fe80de1abdec2a8;hp=3bb54f784c4ee4c3b86b97f8724c74d79146cc9f;hpb=8f87af0520c5dbcedbfe74dd6ef6e7826f200263;p=term-progressbar.git diff --git a/t/v2-simple.t b/t/v2-simple.t index 3bb54f7..37f9d60 100644 --- a/t/v2-simple.t +++ b/t/v2-simple.t @@ -1,6 +1,7 @@ # (X)Emacs mode: -*- cperl -*- use strict; +use warnings; =head1 Unit Test Package for Term::ProgressBar @@ -8,14 +9,10 @@ This package tests the basic functionality of Term::ProgressBar. =cut -use Data::Dumper qw( Dumper ); -use FindBin qw( $Bin ); use Test::More tests => 31; +use Test::Exception; -use lib $Bin; -use test qw( evcheck ); - -use Capture::Tiny qw(capture); +use Capture::Tiny qw(capture_stderr); use_ok 'Term::ProgressBar'; @@ -36,17 +33,14 @@ Update it it from 1 to 10. =cut { - my $p; - -my ($out, $err) = capture { - ok (evcheck(sub { $p = Term::ProgressBar->new(10); }, 'Count 1-10 (1)' ), - 'Count 1-10 (1)'); - ok (evcheck(sub { $p->update($_) for 1..10 }, 'Count 1-10 (2)' ), - 'Count 1-10 (2)'); -}; -print $out; - my @lines = grep $_ ne '', split /\r/, $err; - print Dumper \@lines + my $err = capture_stderr { + my $p; + lives_ok { $p = Term::ProgressBar->new(10); } 'Count 1-10 (1)'; + lives_ok { $p->update($_) for 1..10 } 'Count 1-10 (2)'; + }; + + my @lines = grep {$_ ne ''} split /\r/, $err; + diag explain \@lines if $ENV{TEST_DEBUG}; like $lines[-1], qr/\[=+\]/, 'Count 1-10 (3)'; like $lines[-1], qr/^\s*100%/, 'Count 1-10 (4)'; @@ -69,18 +63,14 @@ Update it it from 1 to 9. =cut { - my $p; - -my ($out, $err) = capture { - ok (evcheck(sub { $p = Term::ProgressBar->new(10); }, 'Count 1-9 (1)' ), - 'Count 1-9 (1)'); - ok (evcheck(sub { $p->update($_) for 1..9 }, 'Count 1-9 (2)' ), - 'Count 1-9 (2)'); -}; -print $out; + my $err = capture_stderr { + my $p; + lives_ok { $p = Term::ProgressBar->new(10); } 'Count 1-9 (1)'; + lives_ok { $p->update($_) for 1..9 } 'Count 1-9 (2)'; + }; my @lines = grep $_ ne '', split /\r/, $err; - print Dumper \@lines + diag explain \@lines if $ENV{TEST_DEBUG}; like $lines[-1], qr/\[=+ +\]/, 'Count 1-9 (3)'; like $lines[-1], qr/^\s*90%/, 'Count 1-9 (4)'; @@ -97,13 +87,13 @@ percentage or displayed bar). =cut { -my ($out, $err) = capture { - my $b = Term::ProgressBar->new(1000000); - $b->update($_) foreach (0, 1); -}; -print $out; - my @lines = grep $_ ne '', split /\r/, $err; - print Dumper \@lines + my $err = capture_stderr { + my $tp = Term::ProgressBar->new(1000000); + $tp->update($_) foreach (0, 1); + }; + + my @lines = grep {$_ ne ''} split /\r/, $err; + diag explain \@lines if $ENV{TEST_DEBUG}; is scalar @lines, 1; }