Lines 2-13
Link Here
|
2 |
|
2 |
|
3 |
use strict; |
3 |
use strict; |
4 |
use warnings; |
4 |
use warnings; |
5 |
use C4::Branch; |
|
|
6 |
|
5 |
|
7 |
use Test::More tests => 4; |
6 |
use Test::More tests => 14; |
|
|
7 |
use Test::MockModule; |
8 |
|
8 |
use MARC::Record; |
9 |
use MARC::Record; |
|
|
10 |
use DateTime::Duration; |
11 |
|
9 |
use C4::Biblio; |
12 |
use C4::Biblio; |
10 |
use C4::Items; |
13 |
use C4::Items; |
|
|
14 |
use C4::Branch; |
15 |
use Koha::DateUtils; |
11 |
|
16 |
|
12 |
BEGIN { |
17 |
BEGIN { |
13 |
use FindBin; |
18 |
use FindBin; |
Lines 67-72
ok($status eq "Reserved", "CheckReserves Test 2");
Link Here
|
67 |
ok($status eq "Reserved", "CheckReserves Test 3"); |
72 |
ok($status eq "Reserved", "CheckReserves Test 3"); |
68 |
|
73 |
|
69 |
|
74 |
|
|
|
75 |
# GetMaxPickupDate |
76 |
my $item = GetItem( $itemnumber ); |
77 |
is( C4::Reserves::GetMaxPickupDate(), undef, "GetMaxPickupDate return undef if no parameter is given" ); |
78 |
|
79 |
# There is no issuingrule defined |
80 |
my $module = new Test::MockModule('C4::Circulation'); |
81 |
$module->mock( |
82 |
'GetIssuingRule', |
83 |
sub { |
84 |
return; |
85 |
} |
86 |
); |
87 |
# GetMaxPickupDate returns the same values for the 3 next calls (only reserve, only item and reserve + item) |
88 |
is( C4::Reserves::GetMaxPickupDate($reserve), undef, "GetMaxPickupDate return undef if only reserve is given and waitingdate is not defined" ); |
89 |
is( C4::Reserves::GetMaxPickupDate(undef, $item), undef, "GetMaxPickupDate return undef if only item is given and waitingdate is not defined" ); |
90 |
is( C4::Reserves::GetMaxPickupDate($reserve, $item), undef, "GetMaxPickupDate return undef if reserve and item are given and waitingdate is not defined" ); |
91 |
|
92 |
# Set a maxpickupdate value |
93 |
C4::Reserves::ModReserveAffect( $item->{itemnumber}, $borrowernumber ); |
94 |
$reserve = C4::Reserves::GetReserveInfo( $borrowernumber, $biblionumber ); |
95 |
is( C4::Reserves::GetMaxPickupDate($reserve), $reserve->{waitingdate} . 'T00:00:00', "GetMaxPickupDate return undef if only reserve is given and waitingdate is defined" ); |
96 |
is( C4::Reserves::GetMaxPickupDate(undef, $item), $reserve->{waitingdate} . 'T00:00:00', "GetMaxPickupDate return undef if only item is given and waitingdate is defined" ); |
97 |
is( C4::Reserves::GetMaxPickupDate($reserve, $item), $reserve->{waitingdate} . 'T00:00:00', "GetMaxPickupDate return undef if reserve and item are given and waitingdate is not defined" ); |
98 |
|
99 |
my $delay = 5; |
100 |
$module->mock( |
101 |
'GetIssuingRule', |
102 |
sub { |
103 |
return {holdspickupdelay => $delay}; |
104 |
} |
105 |
); |
106 |
|
107 |
my $waitingdate_plus_5days = dt_from_string( $reserve->{waitingdate} )->add_duration(DateTime::Duration->new( days => $delay )); |
108 |
is( C4::Reserves::GetMaxPickupDate($reserve), $waitingdate_plus_5days, "GetMaxPickupDate return undef if only reserve is given and waitingdate is defined" ); |
109 |
is( C4::Reserves::GetMaxPickupDate(undef, $item), $waitingdate_plus_5days, "GetMaxPickupDate return undef if only item is given and waitingdate is defined" ); |
110 |
is( C4::Reserves::GetMaxPickupDate($reserve, $item), $waitingdate_plus_5days, "GetMaxPickupDate return undef if reserve and item are given and waitingdate is not defined" ); |
111 |
|
112 |
|
70 |
# Teardown Test--------------------- |
113 |
# Teardown Test--------------------- |
71 |
# Delete item. |
114 |
# Delete item. |
72 |
diag("Deleting item testing instance."); |
115 |
diag("Deleting item testing instance."); |
73 |
- |
|
|