Acme-MetaSyntactic

 view release on metacpan or  search on metacpan

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

our $Theme = 'foo'; # default theme
our %META;

# private class method
sub _find_themes {
    my ( $class, @dirs ) = @_;
    return
        map  @$_,
        grep { $_->[0] !~ /^[A-Z]/ }    # remove the non-theme subclasses
        map  { [ ( fileparse( $_, qr/\.pm$/ ) )[0] => $_ ] }
        map  { File::Glob::bsd_glob( File::Spec->catfile( $_, qw( Acme MetaSyntactic *.pm ) ) ) } @dirs;
}

# fetch the list of standard themes
$META{$_} = 0 for keys %{ { __PACKAGE__->_find_themes(@INC) } };

# the functions actually hide an instance
my $meta = Acme::MetaSyntactic->new( $Theme );

# END OF INITIALISATION

t/50usecase.t  view on Meta::CPAN

use strict;
use Test::More;
use File::Spec::Functions;
use File::Glob;

my $dir;
BEGIN { $dir = catdir qw( t lib ); }
use lib $dir;

my @list_cases      = File::Glob::bsd_glob catfile(qw(t usecase_list*));
my @locale_fr_cases = File::Glob::bsd_glob catfile(qw(t usecase_locale_fr*));
my @locale_en_cases = File::Glob::bsd_glob catfile(qw(t usecase_locale_en*));
my @alias_cases     = File::Glob::bsd_glob catfile(qw(t usecase_alias*));

plan tests => 2
    * ( @list_cases + @locale_fr_cases + @locale_en_cases + @alias_cases );

LIST: {
    use Acme::MetaSyntactic::test_ams_list;
    my %items = map { $_ => 1 } @Acme::MetaSyntactic::test_ams_list::List;

    for (@list_cases) {
        my $result = `$^X "-I$dir" -Mstrict -w $_`;



( run in 0.936 second using v1.01-cache-2.11-cpan-49f99fa48dc )