Array-Splice

 view release on metacpan or  search on metacpan

t/boilerplate.t  view on Meta::CPAN

#!perl -T

use strict;
use warnings;
use Test::More tests => 3;

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

    }

    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

    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");
    print "#  not_destroyed: @not_destroyed\n" if @not_destroyed;
    ok(!@unexpected_destroy,"$test, unexpected destruction");
    print "#  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.747 second using v1.01-cache-2.11-cpan-0a987023a57 )