use strict;
use warnings;
use FindBin qw/$Bin/;
use File::Spec;
use File::Find::Rule;
use Module::Info;
use Test::More;
my %versions;
for my $pm_file ( File::Find::Rule->file->name( qr/\.pm$/ )->in(File::Spec->catdir($Bin, '..', '..', 'lib') ) ) {
my $mod = Module::Info->new_from_file($pm_file);
( my $stripped_file = $pm_file ) =~ s{.*lib/}{};
$versions{$stripped_file} = $mod->version;
}
my $ver = delete $versions{'Catalyst/Devel.pm'};
ok $ver;
ok scalar(keys %versions);
for my $module ( sort keys %versions ) {
next unless $versions{$module};
is( $versions{$module}, $ver,
"version for $module is the same as in Catalyst/Devel.pm" );
}
done_testing;