Lines 1-16
Link Here
|
1 |
#!/usr/bin/perl |
1 |
#!/usr/bin/perl |
2 |
# |
|
|
3 |
|
2 |
|
4 |
use strict; |
3 |
use Modern::Perl; |
5 |
use warnings; |
|
|
6 |
use C4::Context; |
4 |
use C4::Context; |
7 |
use C4::Dates; |
5 |
use C4::Dates; |
8 |
use Test::More tests => 5; |
6 |
use Test::More tests => 7; |
|
|
7 |
use Test::MockModule; |
9 |
|
8 |
|
10 |
BEGIN { |
9 |
BEGIN { |
11 |
use_ok('Koha::Template::Plugin::KohaDates'); |
10 |
use_ok('Koha::Template::Plugin::KohaDates'); |
12 |
} |
11 |
} |
13 |
|
12 |
|
|
|
13 |
my $module_context = new Test::MockModule('C4::Context'); |
14 |
|
14 |
my $date = "1973-05-21"; |
15 |
my $date = "1973-05-21"; |
15 |
my $context = C4::Context->new(); |
16 |
my $context = C4::Context->new(); |
16 |
my $dateobj = C4::Dates->new(); |
17 |
my $dateobj = C4::Dates->new(); |
Lines 18-24
my $dateobj = C4::Dates->new();
Link Here
|
18 |
my $filter = Koha::Template::Plugin::KohaDates->new(); |
19 |
my $filter = Koha::Template::Plugin::KohaDates->new(); |
19 |
ok ($filter, "new()"); |
20 |
ok ($filter, "new()"); |
20 |
|
21 |
|
21 |
|
|
|
22 |
$context->set_preference( "dateformat", 'iso' ); |
22 |
$context->set_preference( "dateformat", 'iso' ); |
23 |
$context->clear_syspref_cache(); |
23 |
$context->clear_syspref_cache(); |
24 |
$dateobj->reset_prefformat; |
24 |
$dateobj->reset_prefformat; |
Lines 40-42
$dateobj->reset_prefformat;
Link Here
|
40 |
|
40 |
|
41 |
$filtered_date = $filter->filter($date); |
41 |
$filtered_date = $filter->filter($date); |
42 |
is ($filtered_date,'21/05/1973', "metric conversion") or diag ("metric conversion fails $filtered_date"); |
42 |
is ($filtered_date,'21/05/1973', "metric conversion") or diag ("metric conversion fails $filtered_date"); |
43 |
- |
43 |
|
|
|
44 |
$module_context->mock( |
45 |
'tz', |
46 |
sub { |
47 |
return DateTime::TimeZone->new( name => 'Europe/Lisbon' ); |
48 |
} |
49 |
); |
50 |
|
51 |
$filtered_date = $filter->filter('1979-04-01'); |
52 |
is( $filtered_date, '01/04/1979', 'us: dt_from_string should return the valid date if a DST is given' ); |
53 |
|
54 |
$module_context->mock( |
55 |
'tz', |
56 |
sub { |
57 |
return DateTime::TimeZone->new( name => 'Europe/Paris' ); |
58 |
} |
59 |
); |
60 |
|
61 |
$filtered_date = $filter->filter('2014-03-30 02:00:00'); |
62 |
is( $filtered_date, '30/03/2014', 'us: dt_from_string should return a DateTime object if a DST is given' ); |