90 lines
1.3 KiB
Perl
90 lines
1.3 KiB
Perl
use strict;
|
|
use warnings;
|
|
use Config;
|
|
use Test::More tests => 1;
|
|
|
|
# This .t file is generated.
|
|
# make changes instead to dist.ini
|
|
|
|
my %modules;
|
|
my $post_diag;
|
|
|
|
$modules{$_} = $_ for qw(
|
|
ExtUtils::MakeMaker
|
|
JSON
|
|
JSON::XS
|
|
Moose
|
|
Moose::Util::TypeConstraints
|
|
MooseX::Types
|
|
Test::More
|
|
);
|
|
|
|
|
|
|
|
my @modules = sort keys %modules;
|
|
|
|
sub spacer ()
|
|
{
|
|
diag '';
|
|
diag '';
|
|
diag '';
|
|
}
|
|
|
|
pass 'okay';
|
|
|
|
my $max = 1;
|
|
$max = $_ > $max ? $_ : $max for map { length $_ } @modules;
|
|
our $format = "%-${max}s %s";
|
|
|
|
spacer;
|
|
|
|
my @keys = sort grep /(MOJO|PERL|\A(LC|HARNESS)_|\A(SHELL|LANG)\Z)/i, keys %ENV;
|
|
|
|
if(@keys > 0)
|
|
{
|
|
diag "$_=$ENV{$_}" for @keys;
|
|
|
|
if($ENV{PERL5LIB})
|
|
{
|
|
spacer;
|
|
diag "PERL5LIB path";
|
|
diag $_ for split $Config{path_sep}, $ENV{PERL5LIB};
|
|
|
|
}
|
|
elsif($ENV{PERLLIB})
|
|
{
|
|
spacer;
|
|
diag "PERLLIB path";
|
|
diag $_ for split $Config{path_sep}, $ENV{PERLLIB};
|
|
}
|
|
|
|
spacer;
|
|
}
|
|
|
|
diag sprintf $format, 'perl', "$] $^O $Config{archname}";
|
|
|
|
foreach my $module (@modules)
|
|
{
|
|
my $pm = "$module.pm";
|
|
$pm =~ s{::}{/}g;
|
|
if(eval { require $pm; 1 })
|
|
{
|
|
my $ver = eval { $module->VERSION };
|
|
$ver = 'undef' unless defined $ver;
|
|
diag sprintf $format, $module, $ver;
|
|
}
|
|
else
|
|
{
|
|
diag sprintf $format, $module, '-';
|
|
}
|
|
}
|
|
|
|
if($post_diag)
|
|
{
|
|
spacer;
|
|
$post_diag->();
|
|
}
|
|
|
|
spacer;
|
|
|