Lines 4-10
Link Here
|
4 |
# Current state is very rudimentary. Please help to extend it! |
4 |
# Current state is very rudimentary. Please help to extend it! |
5 |
|
5 |
|
6 |
use Modern::Perl; |
6 |
use Modern::Perl; |
7 |
use Test::More tests => 6; |
7 |
use Test::More tests => 7; |
8 |
|
8 |
|
9 |
use Koha::Database; |
9 |
use Koha::Database; |
10 |
use t::lib::TestBuilder; |
10 |
use t::lib::TestBuilder; |
Lines 209-212
subtest cancel_hold => sub {
Link Here
|
209 |
is( $item->holds->count(), 0, "Item has 0 holds remaining"); |
209 |
is( $item->holds->count(), 0, "Item has 0 holds remaining"); |
210 |
}; |
210 |
}; |
211 |
|
211 |
|
|
|
212 |
subtest do_hold => sub { |
213 |
plan tests => 7; |
214 |
|
215 |
my $library = $builder->build_object( { class => 'Koha::Libraries' } ); |
216 |
my $patron_1 = $builder->build_object( |
217 |
{ |
218 |
class => 'Koha::Patrons', |
219 |
value => { |
220 |
branchcode => $library->branchcode, |
221 |
} |
222 |
} |
223 |
); |
224 |
my $patron_2 = $builder->build_object( |
225 |
{ |
226 |
class => 'Koha::Patrons', |
227 |
value => { |
228 |
branchcode => $library->branchcode, |
229 |
categorycode => $patron_1->categorycode, |
230 |
} |
231 |
} |
232 |
); |
233 |
|
234 |
t::lib::Mocks::mock_userenv( |
235 |
{ branchcode => $library->branchcode, flags => 1 } ); |
236 |
|
237 |
my $item = $builder->build_sample_item( |
238 |
{ |
239 |
library => $library->branchcode, |
240 |
} |
241 |
); |
242 |
|
243 |
my $reserve1 = AddReserve( |
244 |
{ |
245 |
branchcode => $library->branchcode, |
246 |
borrowernumber => $patron_1->borrowernumber, |
247 |
biblionumber => $item->biblio->biblionumber, |
248 |
itemnumber => $item->itemnumber, |
249 |
} |
250 |
); |
251 |
is( $item->biblio->holds->count(), 1, "Hold was placed on bib" ); |
252 |
is( $item->holds->count(), 1, "Hold was placed on specific item" ); |
253 |
|
254 |
my $sip_patron = C4::SIP::ILS::Patron->new( $patron_2->cardnumber ); |
255 |
my $sip_item = C4::SIP::ILS::Item->new( $item->barcode ); |
256 |
my $transaction = C4::SIP::ILS::Transaction::Hold->new(); |
257 |
is( |
258 |
ref $transaction, |
259 |
"C4::SIP::ILS::Transaction::Hold", |
260 |
"New transaction created" |
261 |
); |
262 |
is( $transaction->patron($sip_patron), |
263 |
$sip_patron, "Patron assigned to transaction" ); |
264 |
is( $transaction->item($sip_item), |
265 |
$sip_item, "Item assigned to transaction" ); |
266 |
my $hold = $transaction->do_hold(); |
267 |
is( $item->biblio->holds->count(), 2, "Bib has 2 holds" ); |
268 |
|
269 |
is( $patron_2->holds->next->priority, 2, 'Hold placed from SIP should have a correct priority of 2'); |
270 |
}; |
271 |
|
212 |
$schema->storage->txn_rollback; |
272 |
$schema->storage->txn_rollback; |
213 |
- |
|
|