Acme-MetaSyntactic

 view release on metacpan or  search on metacpan

t/35remote.t  view on Meta::CPAN

use Test::More tests => 19;
use strict;

use File::Spec::Functions;
my $dir;
BEGIN { $dir = catdir qw( t lib ); }
use lib $dir;

{ eval "require LWP::UserAgent;"; }
my $has_lwp = !$@;

# test the helper subs
is( Acme::MetaSyntactic::RemoteList::tr_accent('a é ö ì À + ='),
    'a e o i A + =', 'tr_accent' );
is( Acme::MetaSyntactic::RemoteList::tr_nonword('a;Aö"1À +='),
    'a_A__1____', 'tr_nonword' );

# theme without a remote list
use Acme::MetaSyntactic::test_ams_list();
ok( ! Acme::MetaSyntactic::test_ams_list->has_remotelist(),
    "No remote list for tets_ams_list" );
is( Acme::MetaSyntactic::test_ams_list->source(), undef, 'test_ams_list source() empty' );

my $list = Acme::MetaSyntactic::test_ams_list->new();
ok( ! $list->has_remotelist(), 'No remote list for test_ams_list object' );
is( $list->source(), undef, 'test_ams_list object source() empty' );

# try to get the list anyway
SKIP: {
    skip "LWP::UserAgent required to test remote_list()", 1 if !$has_lwp;
    is( $list->remote_list(), undef, 'No remote list for test_ams_list object' );
}

# default version of extract
is( $list->extract( 'zlonk aieee' ), 'zlonk aieee', "Default extract()" );


# theme with a remote list
use Acme::MetaSyntactic::test_ams_remote();
ok( Acme::MetaSyntactic::test_ams_remote->has_remotelist(),
    'test_ams_remote has a remote list' );
is( Acme::MetaSyntactic::test_ams_remote->source(),
    'http://www.perdu.com/',
    'test_ams_remote source()'
);

my $remote = Acme::MetaSyntactic::test_ams_remote->new();
ok( $remote->has_remotelist(), 'test_ams_remote object has a remote list' );
is( $remote->source(), 'http://www.perdu.com/',
    'test_ams_remote source()' );

# these tests must be run after the test module has been loaded
END {
    ok( Acme::MetaSyntactic::dummy->has_remotelist,
        'dummy has a remote list' );

    my $dummy = Acme::MetaSyntactic::dummy->new();
    ok( $dummy->has_remotelist, 'dummy object has a remote list' );

    my $content = << 'EOC';
list
* meu
* zo
* bu
* gä
EOC
    is_deeply( [ Acme::MetaSyntactic::dummy->extract($content) ],



( run in 1.049 second using v1.01-cache-2.11-cpan-39bf76dae61 )