DateTime-Format-Strptime
view release on metacpan or search on metacpan
xt/author/generated-locale-aa.t view on Meta::CPAN
use strict;
use warnings;
use Test::More 0.96;
use Test::Fatal;
use DateTime::Format::Strptime;
use DateTime::Locale;
use DateTime;
my $code_meth = DateTime::Locale->load('en')->can('code') ? 'code' : 'id';
my $locale = 'aa';
test_days($locale);
test_months($locale);
test_am_pm($locale);
test_locale($locale);
done_testing();
sub test_days {
my $locale = shift;
subtest(
'days',
sub {
foreach my $day ( 1 .. 7 ) {
subtest(
"Day $day",
sub { _test_one_day( $locale, $day ); },
);
}
}
);
}
sub _test_one_day {
my $locale = shift;
my $day = shift;
_utf8_output();
my $pattern = '%Y-%m-%d %A';
my $dt = DateTime->now( locale => $locale )->set( day => $day );
my $input = $dt->strftime($pattern);
my $strptime;
is(
exception {
$strptime = DateTime::Format::Strptime->new(
pattern => $pattern,
locale => $locale,
on_error => 'croak',
);
},
undef,
'constructor with day name in pattern (%A)'
) or return;
my $parsed_dt;
is(
exception {
$parsed_dt = $strptime->parse_datetime($input)
},
( run in 1.106 second using v1.01-cache-2.11-cpan-54e63673c56 )