View | Details | Raw Unified | Return to bug 19176
Collapse All | Expand All

(-)a/t/Test/Dates.t (-4 / +7 lines)
Lines 1-5 Link Here
1
use Modern::Perl;
1
use Modern::Perl;
2
use Test::More tests => 7;
2
use Test::More tests => 8;
3
use t::lib::Dates;
3
use t::lib::Dates;
4
use Koha::DateUtils qw( dt_from_string );
4
use Koha::DateUtils qw( dt_from_string );
5
5
Lines 20-26 is( t::lib::Dates::compare( $dt_1, $dt_3 ), Link Here
20
is( t::lib::Dates::compare( $dt_3, $dt_1 ),
20
is( t::lib::Dates::compare( $dt_3, $dt_1 ),
21
    0, 'If there is less than 1min, the dates are considered identicals' );
21
    0, 'If there is less than 1min, the dates are considered identicals' );
22
22
23
$dt_1->set_time_zone('+0000');
23
$dt_1 = DateTime->new(year => 2001, month => 1, day => 1, hour => 0, minute => 0, second => 0, time_zone => '+0000');
24
$dt_3 = $dt_1->clone->set_time_zone('+0400');
24
$dt_3 = DateTime->new(year => 2001, month => 1, day => 1, hour => 4, minute => 0, second => 0, time_zone => '+0400');
25
is( t::lib::Dates::compare( $dt_1, $dt_3 ), 0, 'Different timezone but same date/time' );
25
26
26
is( t::lib::Dates::compare( $dt_1, $dt_3 ), -1, "Compare different timezones" );
27
$dt_1 = DateTime->new(year => 2001, month => 1, day => 1, hour => 0, minute => 0, second => 0, time_zone => '+0000');
28
$dt_3 = DateTime->new(year => 2001, month => 1, day => 1, hour => 0, minute => 0, second => 0, time_zone => '+0400');
29
is( t::lib::Dates::compare( $dt_1, $dt_3 ), 1, 'Different timezone and different date/time' );
(-)a/t/lib/Dates.pm (-3 lines)
Lines 24-31 sub compare { Link Here
24
    my ( $got, $expected, $description ) = @_;
24
    my ( $got, $expected, $description ) = @_;
25
    my $dt_got      = dt_from_string($got);
25
    my $dt_got      = dt_from_string($got);
26
    my $dt_expected = dt_from_string($expected);
26
    my $dt_expected = dt_from_string($expected);
27
    $dt_got->set_time_zone('floating');
28
    $dt_expected->set_time_zone('floating');
29
    my $diff = $dt_got->epoch - $dt_expected->epoch;
27
    my $diff = $dt_got->epoch - $dt_expected->epoch;
30
    if ( abs($diff) < 6 ) { return 0 }
28
    if ( abs($diff) < 6 ) { return 0 }
31
    return $diff > 0 ? 1 : -1;
29
    return $diff > 0 ? 1 : -1;
32
- 

Return to bug 19176