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

(-)a/t/db_dependent/Circulation/dateexpiry.t (-2 / +23 lines)
Lines 23-28 use Test::More tests => 2; Link Here
23
use C4::Members;
23
use C4::Members;
24
use Koha::DateUtils;
24
use Koha::DateUtils;
25
use Koha::Database;
25
use Koha::Database;
26
use C4::Calendar;
26
27
27
use t::lib::TestBuilder;
28
use t::lib::TestBuilder;
28
use t::lib::Mocks qw( mock_preference );
29
use t::lib::Mocks qw( mock_preference );
Lines 39-45 subtest 'Tests for CanBookBeIssued related to dateexpiry' => sub { Link Here
39
    can_book_be_issued();
40
    can_book_be_issued();
40
};
41
};
41
subtest 'Tests for CalcDateDue related to dateexpiry' => sub {
42
subtest 'Tests for CalcDateDue related to dateexpiry' => sub {
42
    plan tests => 4;
43
    plan tests => 5;
43
    calc_date_due();
44
    calc_date_due();
44
};
45
};
45
46
Lines 82-87 sub can_book_be_issued { Link Here
82
83
83
sub calc_date_due {
84
sub calc_date_due {
84
    t::lib::Mocks::mock_preference( 'ReturnBeforeExpiry', 1 );
85
    t::lib::Mocks::mock_preference( 'ReturnBeforeExpiry', 1 );
86
    t::lib::Mocks::mock_preference( 'useDaysMode', 'Days' );
85
87
86
    # this triggers the compare between expiry and due date
88
    # this triggers the compare between expiry and due date
87
89
Lines 116-121 sub calc_date_due { Link Here
116
    $d = C4::Circulation::CalcDateDue( $today, $item->{itype}, $branch->{branchcode}, $patron );
118
    $d = C4::Circulation::CalcDateDue( $today, $item->{itype}, $branch->{branchcode}, $patron );
117
    my $t2 = time;
119
    my $t2 = time;
118
    is( ref $d eq "DateTime" && $t2 - $t1 < 1, 1, "CalcDateDue with expiry in year 9876 in " . sprintf( "%6.4f", $t2 - $t1 ) . " seconds." );
120
    is( ref $d eq "DateTime" && $t2 - $t1 < 1, 1, "CalcDateDue with expiry in year 9876 in " . sprintf( "%6.4f", $t2 - $t1 ) . " seconds." );
121
122
    # fifth test takes account of closed days
123
    $d = C4::Circulation::CalcDateDue( $today, $item->{itype}, $branch->{branchcode}, $patron );
124
    t::lib::Mocks::mock_preference( 'useDaysMode', 'Datedue' );
125
    my $calendar = C4::Calendar->new(branchcode => $branch->{branchcode});
126
    $calendar->insert_single_holiday(
127
        day             => $d->day(),
128
        month           => $d->month(),
129
        year            => $d->year(),
130
        title           =>'holidayTest',
131
        description     => 'holidayDesc'
132
    );
133
    $calendar->delete_holiday(weekday => $d->day_of_week() - 1, day => $d->day()-1, month =>$d->month(), year=>$d->year() );
134
    $d2 = C4::Circulation::CalcDateDue( $today, $item->{itype}, $branch->{branchcode}, $patron );
135
    $d2->add(days => 1);
136
    $d->truncate( to => 'day' );
137
    $d2->truncate( to => 'day' );
138
    warn Data::Dumper::Dumper($d->datetime());
139
    warn Data::Dumper::Dumper($d2->datetime());
140
    is ( DateTime->compare( $d, $d2) == 0, 1, "no problem with closed days");
119
}
141
}
120
142
121
$schema->storage->txn_rollback;
143
$schema->storage->txn_rollback;
122
- 

Return to bug 11580