Business-OnlinePayment-CyberSource

 view release on metacpan or  search on metacpan

t/00-report-prereqs.t  view on Meta::CPAN

# and check if they are available
my $cpan_meta = "CPAN::Meta";
my $cpan_meta_req = "CPAN::Meta::Requirements";
my $HAS_CPAN_META = eval "require $cpan_meta"; ## no critic
my $HAS_CPAN_META_REQ = eval "require $cpan_meta_req; $cpan_meta_req->VERSION('2.120900')";

# Verify requirements?
my $DO_VERIFY_PREREQS = 1;

sub _merge_requires {
    my ($collector, $prereqs) = @_;
    for my $phase ( qw/configure build test runtime develop/ ) {
        next unless exists $prereqs->{$phase};
        if ( my $req = $prereqs->{$phase}{'requires'} ) {
            my $cmr = CPAN::Meta::Requirements->from_string_hash( $req );
            $collector->add_requirements( $cmr );
        }
    }
}

my %include = map {; $_ => 1 } qw(

);

my %exclude = map {; $_ => 1 } qw(

);

# Add static prereqs to the included modules list
my $static_prereqs = do { my $x = {
       'configure' => {
                        'requires' => {
                                        'ExtUtils::MakeMaker' => '6.30'
                                      }
                      },
       'develop' => {
                      'requires' => {
                                      'Pod::Coverage::TrustPod' => '0',
                                      'Test::CPAN::Changes' => '0.19',
                                      'Test::Pod' => '1.41',
                                      'Test::Pod::Coverage' => '1.08'
                                    }
                    },
       'runtime' => {
                      'requires' => {
                                      'Business::CyberSource' => '0.009000',
                                      'Business::CyberSource::Client' => '0.007006',
                                      'Business::OnlinePayment' => '3',
                                      'DateTime' => '0',
                                      'Exception::Base' => '0',
                                      'Module::Runtime' => '0',
                                      'Moose' => '0',
                                      'Moose::Role' => '0',
                                      'MooseX::Aliases' => '0',
                                      'MooseX::NonMoose' => '0',
                                      'MooseX::StrictConstructor' => '0',
                                      'MooseX::Types::Common::String' => '0',
                                      'MooseX::Types::CyberSource' => '0',
                                      'MooseX::Types::Moose' => '0',
                                      'Try::Tiny' => '0',
                                      'namespace::autoclean' => '0',
                                      'perl' => '5.010',
                                      'strict' => '0',
                                      'warnings' => '0'
                                    }
                    },
       'test' => {
                   'recommends' => {
                                     'CPAN::Meta' => '0',
                                     'CPAN::Meta::Requirements' => '2.120900'
                                   },
                   'requires' => {
                                   'Crypt::SSLeay' => '0',
                                   'ExtUtils::MakeMaker' => '0',
                                   'File::Spec' => '0',
                                   'File::Spec::Functions' => '0',
                                   'IO::Handle' => '0',
                                   'IPC::Open3' => '0',
                                   'List::Util' => '0',
                                   'Test::More' => '0',
                                   'version' => '0'
                                 }
                 }
     };
  $x;
 };

delete $static_prereqs->{develop} if not $ENV{AUTHOR_TESTING};
$include{$_} = 1 for map { keys %$_ } map { values %$_ } values %$static_prereqs;

# Merge requirements for major phases (if we can)
my $all_requires;
if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META_REQ ) {
    $all_requires = $cpan_meta_req->new;
    _merge_requires($all_requires, $static_prereqs);
}


# Add dynamic prereqs to the included modules list (if we can)
my ($source) = grep { -f } 'MYMETA.json', 'MYMETA.yml';
if ( $source && $HAS_CPAN_META ) {
  if ( my $meta = eval { CPAN::Meta->load_file($source) } ) {
    my $dynamic_prereqs = $meta->prereqs;
    delete $dynamic_prereqs->{develop} if not $ENV{AUTHOR_TESTING};
    $include{$_} = 1 for map { keys %$_ } map { values %$_ } values %$dynamic_prereqs;

    if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META_REQ ) {
        _merge_requires($all_requires, $dynamic_prereqs);
    }
  }
}
else {
  $source = 'static metadata';
}

my @modules = sort grep { ! $exclude{$_} } keys %include;
my @reports = [qw/Version Module/];
my @dep_errors;
my $req_hash = defined($all_requires) ? $all_requires->as_string_hash : {};

for my $mod ( @modules ) {



( run in 2.598 seconds using v1.01-cache-2.11-cpan-7fcb06a456a )