Data-Fake-MetaSyntactic

 view release on metacpan or  search on metacpan

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


# fake_metacategory
for my $args ( [], [ fake_metatheme()->() ], [ fake_metatheme() ] ) {
    my $metacategory = fake_metacategory( @$args );
    is( ref $metacategory, 'CODE', "fake_metacategory() returns a coderef" );
}

# fake_metacategory() picks one theme at random
{
    my $metacategory = fake_metacategory();
    my ($theme) = split m:/:, $metacategory->();

    # same theme each time
    for ( 1 .. $count ) {
        my $category = $metacategory->();
        like( $category, qr{^$theme(?:/|$)}, "$category belongs to $theme" );
    }
}

# pick random categories, and ensure at least one of them has a /
my $metacategory = fake_metacategory( fake_metatheme() );
my @categories;
push @categories, $metacategory->()
    until @categories >= $count && $categories[-1] =~ m:/:;
for my $category ( splice @categories, -$count ) {
    my ($theme) = split m:/:, $category;
    like( $category, qr{^$theme(?:/|$)}, "$category belongs to $theme" );
}

done_testing;



( run in 2.545 seconds using v1.01-cache-2.11-cpan-71847e10f99 )