From: Vincent Pit Date: Tue, 7 Sep 2010 14:49:42 +0000 (+0200) Subject: Correctly report test compilation failures X-Git-Tag: v0.06~11 X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FPerl-Critic-Policy-Dynamic-NoIndirect.git;a=commitdiff_plain;h=4421e107580f32a6c992f44d01b1d2818d65ee87 Correctly report test compilation failures --- diff --git a/t/10-basic.t b/t/10-basic.t index 0c1c23d..314f4f5 100644 --- a/t/10-basic.t +++ b/t/10-basic.t @@ -26,6 +26,7 @@ sub expect { sub zap (&) { } +TEST: { local $/ = "####"; @@ -35,13 +36,24 @@ sub zap (&) { } s/^\s+//s; my ($code, $expected) = split /^-{4,}$/m, $_, 2; - my @expected = eval $expected; - - my @violations = eval { pcritique_with_violations($policy, \$code) }; + my @expected; + { + local $@; + @expected = eval $expected; + if ($@) { + diag "Compilation of expected code $id failed: $@"; + next TEST; + } + } - if ($@) { - diag "Compilation $id failed: $@"; - next; + my @violations; + { + local $@; + @violations = eval { pcritique_with_violations($policy, \$code) }; + if ($@) { + diag "Critique test $id failed: $@"; + next TEST; + } } is @violations, @expected, "right count of violations $id"; @@ -51,7 +63,7 @@ sub zap (&) { } unless ($exp) { fail "Unexpected violation for chunk $id: " . $v->description; - next; + next TEST; } my $pos = $v->location;