1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
package TestFor::Code::TidyAll::Plugin::PerlTidy;
use Test::Class::Most parent => 'TestFor::Code::TidyAll::Plugin';
use Getopt::Long;
sub test_main : Tests {
my $self = shift;
my $source = 'if ( $foo) {\nmy $bar = $baz;\n}\n';
$self->tidyall(
conf => { argv => '-npro' },
source => $source,
expect_tidy => 'if ($foo) {\n my $bar = $baz;\n}\n'
);
$self->tidyall(
conf => { argv => '-npro -bl' },
source => $source,
expect_tidy => 'if ($foo)\n{\n my $bar = $baz;\n}\n'
);
$self->tidyall(
conf => { argv => '-npro' },
source => 'if ($foo) {\n my $bar = $baz;\n}\n',
expect_ok => 1
);
$self->tidyall(
conf => { argv => '-npro' },
source => 'if ($foo) {\n my $bar = $baz;\n',
expect_error => qr/Final nesting depth/
);
$self->tidyall(
conf => { argv => '-npro --badoption' },
source => $source,
expect_error => qr/Unknown option: badoption/
);
}
sub test_getopt_bug : Tests {
my $self = shift;
# This emulates what Getopt::Long::Descriptive does, which in turn breaks
# Perl::Tidy. See https://rt.cpan.org/Ticket/Display.html?id=118558
Getopt::Long::Configure(qw( bundling no_auto_help no_ignore_case ));
my $source = 'if ( $foo) {\nmy $bar = $baz;\n}\n';
$self->tidyall(
conf => { argv => '-npro' },
source => $source,
expect_tidy => 'if ($foo) {\n my $bar = $baz;\n}\n'
);
}
1;
|