File: moose-types.t

package info (click to toggle)
libperl-critic-toomuchcode-perl 0.19-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 220 kB
  • sloc: perl: 776; makefile: 2
file content (40 lines) | stat: -rw-r--r-- 802 bytes parent folder | download | duplicates (2)
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
#!perl

use strict;

use Perl::Critic ();
use Perl::Critic::Utils qw{ :severities };
use Test::More;

use constant POLICY => 'Perl::Critic::Policy::TooMuchCode::ProhibitUnusedImport';

{
    my $pc = Perl::Critic->new( -only => 1 );
    $pc->add_policy(
        -policy => POLICY,
        -params => { moose_type_modules => 'My::Types::Moose' },
    );

    my $code = q~
        use strict;
        use MooseX::Types::Moose qw( Int );
        use My::Types::Moose qw( ArrayRef Bool );

        has => (
            is  => 'ro',
            isa => Bool,
        );

        my $foo = undef;
        if ( is_Int( $foo ) ) {
           ...;
        }

        my $bar = to_ArrayRef('thing');

    ~;
    my @violations = $pc->critique( \$code );
    ok(!@violations, 'no violations');
}

done_testing();