use IPC::Open3 rather than IPC::Run3
[catagits/Catalyst-Devel.git] / t / author / version_numbers.t
1 use strict;
2 use warnings;
3
4 use FindBin qw/$Bin/;
5 use File::Spec;
6 use File::Find ();
7 use ExtUtils::MakeMaker ();
8
9 use File::Find::Rule;
10 use Module::Info;
11
12 use Test::More;
13
14 my %versions;
15 File::Find::find({
16     no_chdir => 1,
17     wanted => sub {
18         return
19             if -d;
20         return
21             if !/\.pm\z/;
22
23         my $version = MM->parse_version($_);
24         $version = undef
25             if $version && $version eq 'undef';
26
27         ( my $stripped_file = $_ ) =~ s{.*lib/}{};
28
29         $versions{$stripped_file} = $version;
30     },
31 }, File::Spec->catdir($Bin, '..', '..', 'lib'));
32
33 my $ver = delete $versions{'Catalyst/Devel.pm'};
34 ok $ver;
35 ok scalar(keys %versions);
36
37 for my $module ( sort keys %versions ) {
38     next unless $versions{$module};
39
40     is( $versions{$module}, $ver,
41         "version for $module is the same as in Catalyst/Devel.pm" );
42 }
43
44 done_testing;
45