a58183d6afd39c0134b476ad07e57983330437b8
[p5sagit/Function-Parameters.git] / t / strict.t
1 use warnings;
2 use strict;
3
4 use Test::More tests => 8;
5
6 use Dir::Self;
7
8 for my $fail (
9         map [__DIR__ . "/strict_$_->[0].fail", @$_[1 .. $#$_]],
10         ['1', qr/expect.*\).*after.*"\@y".*"\$z"/],
11         ['2', qr/expect.*\).*after.*"\@x".*"\$y"/],
12         ['3', qr/expect.*\).*after.*"%y".*"\$z"/],
13         ['4', qr/expect.*\).*after.*"\@y".*"\@z"/],
14 ) {
15         my ($file, $pat) = @$fail;
16         $@ = undef;
17         my $done = do $file;
18         my $exc = $@;
19         my $err = $!;
20
21         is $done, undef, "faulty code doesn't load";
22         $exc or die "$file: $err" if $err;
23         like $exc, $pat;
24 }