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;
BEGIN { eval q{ use EV; } }
$modules{$_} = $_ for qw(
Acme::Override::INET
Capture::Tiny
Clustericious
Cpanel::JSON::XS
Data::Hexdumper
Digest::MD5
Digest::file
EV
File::Find::Rule
File::HomeDir
Hash::MoreUtils
IO::Socket::INET
IO::Socket::IP
IO::Uncompress::Gunzip
JSON::MaybeXS
JSON::PP
JSON::XS
List::MoreUtils
Log::Log4perl
Log::Log4perl::CommandLine
Module::Build
Monkey::Patch
Number::Bytes::Human
Path::Class
Smart::Comments
Test::Clustericious::Cluster
Test::More
YAML::XS
);
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 ', $];
foreach my $module (@modules)
{
if(eval qq{ require $module; 1 })
{
my $ver = eval qq{ \$$module\::VERSION };
$ver = 'undef' unless defined $ver;
diag sprintf $format, $module, $ver;
}
else
{
diag sprintf $format, $module, '-';
}
}
if($post_diag)
{
spacer;
$post_diag->();
}
spacer;