Acme-MetaSyntactic-daleks

 view release on metacpan or  search on metacpan

MANIFEST  view on Meta::CPAN

README
lib/Acme/MetaSyntactic/daleks.pm
eg/metadaleks
utils/update-module
t/00-load.t
t/ams-01load.t
t/ams-02fixme.t
t/ams-17import.t
t/ams-21format.t
t/ams-22uniq.t
t/ams-23length.t
t/ams-24data.t
t/ams-90up2date.t
t/meta-daleks.t
t/pod-coverage.t
t/pod.t
t/NoLang.pm

lib/Acme/MetaSyntactic/daleks.pm  view on Meta::CPAN

*_tr_nonword = \&Acme::MetaSyntactic::RemoteList::tr_nonword;

sub _uniq { return keys %{ { map { $_ => 1 } @_ } } }

%Remote = (
    source  => "http://maddingue.org/daleks/movies.txt",
    extract => sub {
        return sort _uniq(
            map { $_ = _tr_nonword($_) ; s/^_+|_+$//g ; s/_+/_/g ; $_ }
                grep { !/^\d/ }
                    grep { length }
                        split "\012", shift
        )
    },
);

__PACKAGE__->init();

q!EXTERMINATE!;

=head1 NAME

t/ams-23length.t  view on Meta::CPAN

    }
}

plan tests => scalar @ams;

for my $t (@ams) {
    my ($ams, $theme) = @$t;
    my @items = $ams->name( 0 );
    my @failed;
    my $ok = 0;
    ( length($_) <= 251 && ++$ok ) || push @failed, $_ for @items;
    is( $ok, @items, "All names correct for $theme" );
    diag "Names too long: @failed" if @failed;
}

t/meta-daleks.t  view on Meta::CPAN

my $n = 4;
plan tests => 3 + $n;

use_ok( "Acme::MetaSyntactic", "daleks" );

my @words = eval { metadaleks($n) };
is( $@, "", "metadaleks($n)" );
is( scalar @words, $n, "we want $n words" );

for my $word (@words) {
    cmp_ok( length $word, ">=", 1, "word must be non empty" );
}



( run in 1.848 second using v1.01-cache-2.11-cpan-65fba6d93b7 )