Array-Splice
view release on metacpan or search on metacpan
t/boilerplate.t view on Meta::CPAN
1234567891011121314151617#!perl -T
use
strict;
use
warnings;
sub
not_in_file_ok {
my
(
$filename
,
%regex
) =
@_
;
open
my
$fh
,
"<"
,
$filename
or
die
"couldn't open $filename for reading: $!"
;
my
%violated
;
while
(
my
$line
= <
$fh
>) {
while
(
my
(
$desc
,
$regex
) =
each
%regex
) {
if
(
$line
=~
$regex
) {
push
@{
$violated
{
$desc
}||=[]}, $.;
t/boilerplate.t view on Meta::CPAN
2021222324252627282930313233343536373839404142434445464748
}
if
(
%violated
) {
fail(
"$filename contains boilerplate text"
);
diag
"$_ appears on lines @{$violated{$_}}"
for
keys
%violated
;
}
else
{
pass(
"$filename contains no boilerplate text"
);
}
}
not_in_file_ok(
README
=>
"The README is used..."
=>
qr/The README is used/
,
"'version information here'"
=>
qr/to provide version information/
,
);
not_in_file_ok(
Changes
=>
"placeholder date/time"
=>
qr(Date/time)
);
sub
module_boilerplate_ok {
my
(
$module
) =
@_
;
not_in_file_ok(
$module
=>
'the great new $MODULENAME'
=>
qr/ - The great new /
,
'boilerplate description'
=>
qr/Quick summary of what the module/
,
'stub function definition'
=>
qr/function[12]/
,
);
}
module_boilerplate_ok(
'lib/Array/Splice.pm'
);
t/refcount.t view on Meta::CPAN
212223242526272829303132333435363738394041424344
expect_to_destroy_ref
map
{ \
$_
}
@_
;
}
sub
expect_to_insert : lvalue {
@insertion
=
map
{
''
.\
$_
}
@_
;
@_
[0..
$#_
];
}
sub
were_right_things_destroyed {
#use Data::Dumper; print Dumper \@expect_to_destroy, \%destroyed;
my
@not_destroyed
=
map
{
$xref
{
$_
} ||
$_
}
grep
{ !
delete
$destroyed
{
$_
} }
@expect_to_destroy
;
my
@unexpected_destroy
=
map
{
$xref
{
$_
} ||
$_
}
sort
keys
%destroyed
;
ok(!
@not_destroyed
,
"$test, expected destruction"
);
"# not_destroyed: @not_destroyed\n"
if
@not_destroyed
;
ok(!
@unexpected_destroy
,
"$test, unexpected destruction"
);
"# unexpected_destroy: @unexpected_destroy\n"
if
@unexpected_destroy
;
@expect_to_destroy
= ();
}
sub
were_right_things_inserted {
my
@inserted
=
map
{
''
.\
$_
}
@_
;
is_deeply(\
@inserted
,\
@insertion
,
"$test, insertion"
);
@insertion
= ();
}
( run in 0.441 second using v1.01-cache-2.11-cpan-87723dcf8b7 )