Plack-App-Proxy-Selective
view release on metacpan or search on metacpan
inc/Test/Most.pm view on Meta::CPAN
#line 1
package Test::Most;
use warnings;
use strict;
use Test::Most::Exception 'throw_failure';
# XXX don't use 'base' as it can override signal handlers
use Test::Builder::Module;
our ( @ISA, @EXPORT, $DATA_DUMPER_NAMES_INSTALLED );
BEGIN {
# There's some strange fiddling around with import(), so this allows us to
# be nicely backwards compatible to earlier versions of Test::More.
require Test::More;
@Test::More::EXPORT = grep { $_ ne 'explain' } @Test::More::EXPORT;
Test::More->import;
}
use Test::Builder;
my $OK_FUNC;
BEGIN {
$OK_FUNC = \&Test::Builder::ok;
}
#line 35
our $VERSION = '0.23';
$VERSION = eval $VERSION;
#line 395
BEGIN {
@ISA = qw(Test::Builder::Module);
@EXPORT = (
@Test::More::EXPORT,
qw<
all_done
bail_on_fail
die_on_fail
explain
always_explain
last_test_failed
restore_fail
set_failure_handler
show
always_show
>
);
}
sub import {
my $bail_set = 0;
my %modules_to_load = map { $_ => 1 } qw/
Test::Differences
Test::Exception
Test::Deep
Test::Warn
/;
warnings->import;
strict->import;
eval "use Data::Dumper::Names 0.03";
$DATA_DUMPER_NAMES_INSTALLED = !$@;
if ( $ENV{BAIL_ON_FAIL} ) {
$bail_set = 1;
bail_on_fail();
}
if ( !$bail_set and $ENV{DIE_ON_FAIL} ) {
die_on_fail();
}
for my $i ( 0 .. $#_ ) {
if ( 'bail' eq $_[$i] ) {
splice @_, $i, 1;
bail_on_fail();
$bail_set = 1;
last;
}
}
my @exclude_symbols;
my $i = 0;
while ($i < @_) {
if ( !$bail_set and ( 'die' eq $_[$i] ) ) {
splice @_, $i, 1;
die_on_fail();
$i = 0;
next;
}
if ( $_[$i] =~ /^-(.*)/ ) {
my $module = $1;
splice @_, $i, 1;
unless (exists $modules_to_load{$module}) {
require Carp;
Carp::croak("Cannot remove non-existent Test::Module ($module)");
}
delete $modules_to_load{$module};
$i = 0;
next;
}
if ( $_[$i] =~ /^!(.*)/ ) {
splice @_, $i, 1;
push @exclude_symbols => $1;
$i = 0;
next;
}
if ( 'defer_plan' eq $_[$i] ) {
splice @_, $i, 1;
my $builder = Test::Builder->new;
$builder->{Have_Plan} = 1
; # don't like setting this directly, but Test::Builder::has_plan doe
$builder->{TEST_MOST_deferred_plan} = 1;
$builder->{TEST_MOST_all_done} = 0;
$i = 0;
( run in 2.502 seconds using v1.01-cache-2.11-cpan-99c4e6809bf )