Commit | Line | Data |
de340661 |
1 | BEGIN { |
2 | if (keys %INC) { |
3 | print "1..0 # SKIP can't test categories with additional modules loaded\n"; |
4 | exit 0; |
5 | } |
6 | } |
7 | |
7a0d7a93 |
8 | use strict; |
9 | use warnings; |
10 | |
11 | BEGIN { $ENV{PERL_STRICTURES_EXTRA} = 0 } |
12 | |
13 | use strictures (); |
14 | |
15 | # avoid loading Test::More, since it adds warning categories |
16 | |
17 | my %known_cats; @known_cats{@strictures::WARNING_CATEGORIES} = (); |
1e139b49 |
18 | my %core_cats; @core_cats{grep ! /^(?:all|everything|extra)$/, keys %warnings::Offsets} = (); |
7a0d7a93 |
19 | my @missing = sort grep { !exists $known_cats{$_} } keys %core_cats; |
20 | my @extra = sort grep { !exists $core_cats{$_} } keys %known_cats; |
21 | |
22 | print "1..2\n"; |
23 | |
24 | print((@missing ? 'not ' : '') . "ok 1 - strictures includes all warning categories\n"); |
25 | if (@missing) { |
26 | print STDERR "# strictures is missing categories:\n"; |
27 | print STDERR "# $_\n" |
28 | for @missing; |
29 | } |
30 | |
31 | print((@extra ? 'not ' : '') . "ok 2 - strictures includes no extra categories\n"); |
32 | if (@extra) { |
33 | print STDERR "# strictures lists extra categories:\n"; |
34 | print STDERR "# $_\n" |
35 | for @extra; |
36 | } |
37 | |
38 | if (@missing || @extra) { |
39 | exit 1; |
40 | } |