Acme-CPANAuthors-GeekHouse
view release on metacpan or search on metacpan
1234567Revision history
for
Perl extension Acme::CPANAuthors::GeekHouse
0.02 Sun Sep 14 22:09:02 2008
- fixed documentation error
0.01 Sun Sep 14 20:52:02 2008
- original version
inc/Module/Install.pm view on Meta::CPAN
394041424344454647484950515253545556575859# Whether or not inc::Module::Install is actually loaded, the
# $INC{inc/Module/Install.pm} is what will still get set as long as
# the caller loaded module this in the documented manner.
# If not set, the caller may NOT have loaded the bundled version, and thus
# they may not have a MI version that works with the Makefile.PL. This would
# result in false errors or unexpected behaviour. And we don't want that.
my
$file
=
join
(
'/'
,
'inc'
,
split
/::/, __PACKAGE__ ) .
'.pm'
;
unless
(
$INC
{
$file
} ) {
die
<<
"END_DIE"
}
Please invoke ${\__PACKAGE__}
with
:
not:
use
${\__PACKAGE__};
inc/Test/Base.pm view on Meta::CPAN
265266267268269270271272273274275276277278279280281282283284285286287288289290291292293sub
run(&;$) {
(
my
(
$self
),
@_
) = find_my_self(
@_
);
my
$callback
=
shift
;
for
my
$block
(@{
$self
->block_list}) {
$block
->run_filters
unless
$block
->is_filtered;
&{
$callback
}(
$block
);
}
}
my
$name_error
=
"Can't determine section names"
;
sub
_section_names {
return
@_
if
@_
== 2;
my
$block
=
$self
->first_block
or croak
$name_error
;
my
@names
=
grep
{
$_
!~ /^(ONLY|LAST|SKIP)$/;
} @{
$block
->{_section_order}[0] || []};
croak
"$name_error. Need two sections in first block"
unless
@names
== 2;
return
@names
;
}
sub
_assert_plan {
plan(
'no_plan'
)
unless
$Have_Plan
;
}
sub
END {
run_compare()
unless
$Have_Plan
or
$DIED
or not
$import_called
;
inc/Test/Base/Filter.pm view on Meta::CPAN
117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147sub
eval
{
$self
->assert_scalar(
@_
);
my
@return
= CORE::
eval
(
shift
);
return
$@
if
$@;
return
@return
;
}
sub
eval_all {
$self
->assert_scalar(
@_
);
my
$out
=
''
;
my
$err
=
''
;
Test::Base::tie_output(
*STDOUT
,
$out
);
Test::Base::tie_output(
*STDERR
,
$err
);
my
$return
= CORE::
eval
(
shift
);
no
warnings;
untie
*STDOUT
;
untie
*STDERR
;
return
$return
, $@,
$out
,
$err
;
}
sub
eval_stderr {
$self
->assert_scalar(
@_
);
my
$output
=
''
;
Test::Base::tie_output(
*STDERR
,
$output
);
CORE::
eval
(
shift
);
no
warnings;
untie
*STDERR
;
return
$output
;
}
sub
eval_stdout {
inc/Test/Builder.pm view on Meta::CPAN
892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943sub
_autoflush {
my
(
$fh
) =
shift
;
my
$old_fh
=
select
$fh
;
$| = 1;
select
$old_fh
;
}
my
(
$Testout
,
$Testerr
);
sub
_dup_stdhandles {
my
$self
=
shift
;
$self
->_open_testhandles;
# Set everything to unbuffered else plain prints to STDOUT will
# come out in the wrong order from our own prints.
_autoflush(
$Testout
);
_autoflush(\
*STDOUT
);
_autoflush(
$Testerr
);
_autoflush(\
*STDERR
);
$self
->output (
$Testout
);
$self
->failure_output(
$Testerr
);
$self
->todo_output (
$Testout
);
}
my
$Opened_Testhandles
= 0;
sub
_open_testhandles {
my
$self
=
shift
;
return
if
$Opened_Testhandles
;
# We dup STDOUT and STDERR so people can change them in their
# test suites while still getting normal test output.
open
(
$Testout
,
">&STDOUT"
) or
die
"Can't dup STDOUT: $!"
;
open
(
$Testerr
,
">&STDERR"
) or
die
"Can't dup STDERR: $!"
;
# $self->_copy_io_layers( \*STDOUT, $Testout );
# $self->_copy_io_layers( \*STDERR, $Testerr );
$Opened_Testhandles
= 1;
}
sub
_copy_io_layers {
my
(
$self
,
$src
,
$dst
) =
@_
;
$self
->_try(
sub
{
inc/Test/More.pm view on Meta::CPAN
166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
my
$diag
;
$obj_name
=
'The object'
unless
defined
$obj_name
;
my
$name
=
"$obj_name isa $class"
;
if
( !
defined
$object
) {
$diag
=
"$obj_name isn't defined"
;
}
elsif
( !
ref
$object
) {
$diag
=
"$obj_name isn't a reference"
;
}
else
{
# We can't use UNIVERSAL::isa because we want to honor isa() overrides
my
(
$rslt
,
$error
) =
$tb
->_try(
sub
{
$object
->isa(
$class
) });
if
(
$error
) {
if
(
$error
=~ /^Can't call method
"isa"
on unblessed reference/ ) {
# Its an unblessed reference
if
( !UNIVERSAL::isa(
$object
,
$class
) ) {
my
$ref
=
ref
$object
;
$diag
=
"$obj_name isn't a '$class' it's a '$ref'"
;
}
}
else
{
die
<<WHOA;
WHOA! I tried to call ->isa on your object and got some weird error.
Here's the error.
$error
WHOA
}
}
elsif
( !
$rslt
) {
my
$ref
=
ref
$object
;
$diag
=
"$obj_name isn't a '$class' it's a '$ref'"
;
}
}
inc/Test/More.pm view on Meta::CPAN
244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320
}
else
{
$code
=
<<USE;
package $pack;
use $module \@{\$args[0]};
1;
USE
}
my
(
$eval_result
,
$eval_error
) = _eval(
$code
, \
@imports
);
my
$ok
=
$tb
->ok(
$eval_result
,
"use $module;"
);
unless
(
$ok
) {
chomp
$eval_error
;
$@ =~ s{^BEGIN failed--compilation aborted at .*$}
{BEGIN failed--compilation aborted at
$filename
line
$line
.}m;
$tb
->diag(
<<DIAGNOSTIC);
Tried to use '$module'.
Error: $eval_error
DIAGNOSTIC
}
return
$ok
;
}
sub
_eval {
my
(
$code
) =
shift
;
my
@args
=
@_
;
# Work around oddities surrounding resetting of $@ by immediately
# storing it.
local
($@,$!,
$SIG
{__DIE__});
# isolate eval
my
$eval_result
=
eval
$code
;
my
$eval_error
= $@;
return
(
$eval_result
,
$eval_error
);
}
#line 718
sub
require_ok ($) {
my
(
$module
) =
shift
;
my
$tb
= Test::More->builder;
my
$pack
=
caller
;
# Try to deterine if we've been given a module name or file.
# Module names must be barewords, files not.
$module
=
qq['$module']
unless
_is_module_name(
$module
);
my
$code
=
<<REQUIRE;
package $pack;
require $module;
1;
REQUIRE
my
(
$eval_result
,
$eval_error
) = _eval(
$code
);
my
$ok
=
$tb
->ok(
$eval_result
,
"require $module;"
);
unless
(
$ok
) {
chomp
$eval_error
;
$tb
->diag(
<<DIAGNOSTIC);
Tried to require '$module'.
Error: $eval_error
DIAGNOSTIC
}
return
$ok
;
}
sub
_is_module_name {
my
$module
=
shift
;
( run in 0.500 second using v1.01-cache-2.11-cpan-e9199f4ba4c )