Acme-require-case

 view release on metacpan or  search on metacpan

lib/Acme/require/case.pm  view on Meta::CPAN

          };
        my $packaged_do = eval $code; ## no critic
        $result = uplevel( 2, $packaged_do, $realfilename );
    }
    else {
        croak "$filename has incorrect case (maybe you want $actual instead?)";
    }

    # Loaded correctly or not?
    if ($@) {
        $INC{$filename} = undef;
        croak $@;
    }
    elsif ( !$result ) {
        delete $INC{$filename};
        croak "$filename did not return a true value";
    }
    else {
        $! = 0;
        return $result;
    }

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


# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.027

use Test::More tests => 1;

use ExtUtils::MakeMaker;
use File::Spec;

# from $version::LAX
my $lax_version_re =
    qr/(?: undef | (?: (?:[0-9]+) (?: \. | (?:\.[0-9]+) (?:_[0-9]+)? )?
            |
            (?:\.[0-9]+) (?:_[0-9]+)?
        ) | (?:
            v (?:[0-9]+) (?: (?:\.[0-9]+)+ (?:_[0-9]+)? )?
            |
            (?:[0-9]+)? (?:\.[0-9]+){2,} (?:_[0-9]+)?
        )
    )/x;

# hide optional CPAN::Meta modules from prereq scanner

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

        for my $mod ( sort keys %{ $req_hash->{$phase}{$type} } ) {
            next if $mod eq 'perl';
            next if grep { $_ eq $mod } @exclude;

            my $file = $mod;
            $file =~ s{::}{/}g;
            $file .= ".pm";
            my ($prefix) = grep { -e File::Spec->catfile($_, $file) } @INC;

            my $want = $req_hash->{$phase}{$type}{$mod};
            $want = "undef" unless defined $want;
            $want = "any" if !$want && $want == 0;

            my $req_string = $want eq 'any' ? 'any version required' : "version '$want' required";

            if ($prefix) {
                my $have = MM->parse_version( File::Spec->catfile($prefix, $file) );
                $have = "undef" unless defined $have;
                push @reports, [$mod, $want, $have];

                if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META && $type eq 'requires' ) {
                    if ( $have !~ /\A$lax_version_re\z/ ) {
                        push @dep_errors, "$mod version '$have' cannot be parsed ($req_string)";
                    }
                    elsif ( ! $full_prereqs->requirements_for( $phase, $type )->accepts_module( $mod => $have ) ) {
                        push @dep_errors, "$mod version '$have' is not in required range '$want'";
                    }
                }

t/lib/lookup.pm  view on Meta::CPAN

package lookup;
use strict;
use warnings;

my $i = 0;
while ( my @call = map { defined($_) ? $_ : "undef" } caller($i) ) {
    print "$i @call[0..7]\n";
    $i++;
}

1;

t/require.t  view on Meta::CPAN

like( $err, qr/incorrect case/, "foo: caught wrong case" );

$err = exception { require Foo::bar::Baz };
like( $err, qr/incorrect case/, "Foo::bar::Baz: caught wrong case" );

#--------------------------------------------------------------------------#
# Works like CORE::require
#--------------------------------------------------------------------------#

$err = exception { require Foo::Bar::Baz };
is( $err, undef, "Foo::Bar::Baz: required OK" );
ok( $INC{'Foo/Bar/Baz.pm'}, "Foo::Bar::Baz correct in \%INC" );

$err = exception { require 5 };
is( $err, undef, "5: required OK" );

$err = exception { require 5.000 };
is( $err, undef, "5.000: required OK" );

$err = exception { $n = 5; require $n };
is( $err, undef, "\$n = 5: required OK" );

$err = exception { $n = "5"; require $n if $n > 0 };
is( $err, undef, "\$n = '5': required numerized \$n OK" );

$err = exception { require only_once };
is( $err, undef, "only_once: required OK" );
$err = exception { require only_once };
is( $err, undef, "only_once: required again without dying" );

my $abs = File::Spec->rel2abs('t/lib/Absolute.pm');
$err = exception { require $abs };
is( $err, undef, "absolute path" );

#--------------------------------------------------------------------------#
# Fails like CORE::require
#--------------------------------------------------------------------------#

$err = exception { require dies };
like( $err, qr{error at t/lib/dies\.pm}, "dies.pm: caught 'error at' exception" );

$err = exception { require dies };
like( $err, qr{Compilation failed}, "dies.pm: caught 'Compilation failed' reload exception" );



( run in 1.267 second using v1.01-cache-2.11-cpan-d80b1682f3f )