X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=t%2FCalendar.t;h=859d60b343db542661e782beb1bb0e3899ff99b4;hb=cd44ef2dc9fa4ea5a5c138998921043b08d2ff32;hp=65c2622343785f46ee441f40c434251a4e35d0df;hpb=3b694b9b1c80477d50991c2e9204f9e155fdb378;p=koha.git diff --git a/t/Calendar.t b/t/Calendar.t index 65c2622343..859d60b343 100755 --- a/t/Calendar.t +++ b/t/Calendar.t @@ -3,7 +3,7 @@ use strict; use warnings; use DateTime; -use Test::More tests => 14; +use Test::More tests => 21; use Koha::DateUtils; BEGIN { @@ -16,7 +16,56 @@ BEGIN { my $cal = Koha::Calendar->new( TEST_MODE => 1 ); -isa_ok( $cal, 'Koha::Calendar' ); +isa_ok( $cal, 'Koha::Calendar', 'Calendar class returned' ); + +my $saturday = DateTime->new( + year => 2011, + month => 6, + day => 25, + time_zone => 'Europe/London', +); +my $sunday = DateTime->new( + year => 2011, + month => 6, + day => 26, + time_zone => 'Europe/London', +); +my $monday = DateTime->new( + year => 2011, + month => 6, + day => 27, + time_zone => 'Europe/London', +); +my $bloomsday = DateTime->new( + year => 2011, + month => 6, + day => 16, + time_zone => 'Europe/London', +); # should be a holiday +my $special = DateTime->new( + year => 2011, + month => 6, + day => 1, + time_zone => 'Europe/London', +); # should be a holiday +my $notspecial = DateTime->new( + year => 2011, + month => 6, + day => 2, + time_zone => 'Europe/London', +); # should NOT be a holiday + +is( $cal->is_holiday($sunday), 1, 'Sunday is a closed day' ); # wee free test; +is( $cal->is_holiday($monday), 0, 'Monday is not a closed day' ); # alas +is( $cal->is_holiday($bloomsday), 1, 'month/day closed day test' ); +is( $cal->is_holiday($special), 1, 'special closed day test' ); +is( $cal->is_holiday($notspecial), 0, 'open day test' ); + +my $dt = $cal->addDate( $saturday, 1, 'days' ); +is( $dt->day_of_week, 1, 'addDate skips closed Sunday' ); + +$dt = $cal->addDate( $bloomsday, -1 ); +is( $dt->ymd(), '2011-06-15', 'Negative call to addDate' ); my $test_dt = DateTime->new( # Monday year => 2012,