Astro-App-Satpass2

 view release on metacpan or  search on metacpan

t/basic.t  view on Meta::CPAN

    qw{ new format_datetime format_datetime_width gmt tz } );

my @geocode_methods = ( @copier_methods,
    qw{ geocode geocoder } );

my @parse_time_methods = ( @copier_methods,
    qw{ new base config delegate decode parse parse_time_absolute reset
    tz use_perltime } );

diag $_ for dependencies_table();

defined $ENV{TZ}
    and diag "\$ENV{TZ} is '$ENV{TZ}'";

require_ok 'Astro::App::Satpass2::Utils';

{
    can_ok 'Astro::App::Satpass2::Utils', qw{ __parse_class_and_args };

    my $code = Astro::App::Satpass2::Utils->can(
	'__parse_class_and_args' );

    is [ $code->( undef, 'Fubar' ) ], [ 'Fubar' ],
	q<__parse_class_and_args( 'Fubar' )>;

    is [ $code->( undef, 'Fu::Bar,baz=burfle' ) ],
	[ qw{ Fu::Bar baz burfle } ],
	q<__parse_class_and_args( 'Fu::Bar,baz=burfle' )>;

    is [ $code->( undef, 'Fu::Bar,baz=burfle=buzz' ) ],
	[ qw{ Fu::Bar baz burfle=buzz } ],
	q<__parse_class_and_args( 'Fu::Bar,baz=burfle=buzz' )>;

    {
	no warnings qw{ qw };

	is [ $code->( undef, 'Fu::Bar,baz=bur\\,fle' ) ],
	    [ qw{ Fu::Bar baz bur,fle } ],
	    q<__parse_class_and_args( 'Fu::Bar,baz=bur\\,fle' )>;

	is [ $code->( undef, 'Fu::Bar,baz="bur,fle"' ) ],
	    [ qw{ Fu::Bar baz bur,fle } ],
	    q<__parse_class_and_args( 'Fu::Bar,baz="bur,fle"' )>;
    }

}

require_ok 'Astro::App::Satpass2::Locale';

require_ok 'Astro::App::Satpass2::Locale::C';

require_ok 'Astro::App::Satpass2::Warner';

can_ok 'Astro::App::Satpass2::Warner',
    qw{ new wail warning weep whinge };

require_ok 'Astro::App::Satpass2::Copier';

can_ok 'Astro::App::Satpass2::Copier', @copier_methods;

require_ok 'Astro::App::Satpass2::Macro';

require_ok 'Astro::App::Satpass2::Macro::Command';

isa_ok 'Astro::App::Satpass2::Macro::Command',
    'Astro::App::Satpass2::Macro';

require_ok 'Astro::App::Satpass2::Macro::Code';

isa_ok 'Astro::App::Satpass2::Macro::Code',
    'Astro::App::Satpass2::Macro';

require_ok 'Astro::App::Satpass2::FormatTime';

isa_ok 'Astro::App::Satpass2::FormatTime', 'Astro::App::Satpass2::Copier';

can_ok 'Astro::App::Satpass2::FormatTime', @format_time_methods;

require_ok 'Astro::App::Satpass2::FormatTime::POSIX::Strftime';


isa_ok 'Astro::App::Satpass2::FormatTime::POSIX::Strftime',
    'Astro::App::Satpass2::FormatTime';

can_ok 'Astro::App::Satpass2::FormatTime::POSIX::Strftime',
    @format_time_methods;

instantiate( 'Astro::App::Satpass2::FormatTime::POSIX::Strftime' );

SKIP: {

    my $tests = 11;

    eval {
	require DateTime;
	require DateTime::TimeZone;
	1;
    } or skip 'DateTime and/or DateTime::TimeZone not available', $tests;

    require_ok 'Astro::App::Satpass2::FormatTime::DateTime';

    isa_ok 'Astro::App::Satpass2::FormatTime::DateTime',
	'Astro::App::Satpass2::FormatTime';

    can_ok 'Astro::App::Satpass2::FormatTime::DateTime',
	@format_time_methods;

    require_ok 'Astro::App::Satpass2::FormatTime::DateTime::Strftime';

    isa_ok 'Astro::App::Satpass2::FormatTime::DateTime::Strftime',
	'Astro::App::Satpass2::FormatTime::DateTime';

    can_ok 'Astro::App::Satpass2::FormatTime::DateTime::Strftime',
	@format_time_methods;

    instantiate( 'Astro::App::Satpass2::FormatTime::DateTime::Strftime' );

    require_ok 'Astro::App::Satpass2::FormatTime::DateTime::Cldr';

    isa_ok 'Astro::App::Satpass2::FormatTime::DateTime::Cldr',
	'Astro::App::Satpass2::FormatTime::DateTime';

    can_ok 'Astro::App::Satpass2::FormatTime::DateTime::Cldr',
	@format_time_methods;

    instantiate( 'Astro::App::Satpass2::FormatTime::DateTime::Cldr' );

}

instantiate( 'Astro::App::Satpass2::FormatTime' );



( run in 1.348 second using v1.01-cache-2.11-cpan-75ffa21a3d4 )