|
Lines 19-25
Link Here
|
| 19 |
|
19 |
|
| 20 |
use Modern::Perl; |
20 |
use Modern::Perl; |
| 21 |
|
21 |
|
| 22 |
use Test::More tests => 7; |
22 |
use Test::More tests => 8; |
| 23 |
|
23 |
|
| 24 |
use C4::Biblio; |
24 |
use C4::Biblio; |
| 25 |
use C4::Circulation; |
25 |
use C4::Circulation; |
|
Lines 163-170
subtest 'pickup_locations' => sub {
Link Here
|
| 163 |
my $dbh = C4::Context->dbh; |
163 |
my $dbh = C4::Context->dbh; |
| 164 |
|
164 |
|
| 165 |
# Cleanup database |
165 |
# Cleanup database |
| 166 |
Koha::Holds->search->delete; |
|
|
| 167 |
$dbh->do('DELETE FROM issues'); |
166 |
$dbh->do('DELETE FROM issues'); |
|
|
167 |
Koha::Holds->search->delete; |
| 168 |
Koha::Patrons->search->delete; |
168 |
Koha::Patrons->search->delete; |
| 169 |
Koha::Items->search->delete; |
169 |
Koha::Items->search->delete; |
| 170 |
Koha::Libraries->search->delete; |
170 |
Koha::Libraries->search->delete; |
|
Lines 516-518
subtest 'Tests for itemtype' => sub {
Link Here
|
| 516 |
|
516 |
|
| 517 |
$schema->storage->txn_rollback; |
517 |
$schema->storage->txn_rollback; |
| 518 |
}; |
518 |
}; |
| 519 |
- |
519 |
|
|
|
520 |
subtest 'move_to_biblio() tests' => sub { |
| 521 |
|
| 522 |
plan tests => 12; |
| 523 |
|
| 524 |
$schema->storage->txn_begin; |
| 525 |
|
| 526 |
my $dbh = C4::Context->dbh; |
| 527 |
|
| 528 |
my $source_biblio = $builder->build_sample_biblio(); |
| 529 |
my $target_biblio = $builder->build_sample_biblio(); |
| 530 |
|
| 531 |
my $source_biblionumber = $source_biblio->biblionumber; |
| 532 |
|
| 533 |
my $item1 = $builder->build_sample_item({ biblionumber => $source_biblionumber }); |
| 534 |
my $item2 = $builder->build_sample_item({ biblionumber => $source_biblionumber }); |
| 535 |
|
| 536 |
my $itemnumber1 = $item1->itemnumber; |
| 537 |
my $itemnumber2 = $item2->itemnumber; |
| 538 |
|
| 539 |
my $library = $builder->build_object({ class => 'Koha::Libraries' }); |
| 540 |
|
| 541 |
my $patron = $builder->build_object({ |
| 542 |
class => 'Koha::Patrons', |
| 543 |
value => { branchcode => $library->branchcode, } |
| 544 |
}); |
| 545 |
my $borrowernumber = $patron->borrowernumber; |
| 546 |
|
| 547 |
$dbh->do("INSERT INTO aqbudgets (budget_notes) VALUES ('test')"); |
| 548 |
my $budget_id = $dbh->last_insert_id(undef, undef, 'aqbudgets', 'budget_id'); |
| 549 |
|
| 550 |
$dbh->do('INSERT INTO aqorders (biblionumber, budget_id) VALUES (?, ?)', undef, $source_biblionumber, $budget_id); |
| 551 |
my $ordernumber1 = $dbh->last_insert_id(undef, undef, 'aqorders', 'ordernumber'); |
| 552 |
$dbh->do('INSERT INTO aqorders_items (ordernumber, itemnumber) VALUES (?, ?)', undef, $ordernumber1, $itemnumber1); |
| 553 |
|
| 554 |
$dbh->do('INSERT INTO aqorders (biblionumber, budget_id) VALUES (?, ?)', undef, $source_biblionumber, $budget_id); |
| 555 |
my $ordernumber2 = $dbh->last_insert_id(undef, undef, 'aqorders', 'ordernumber'); |
| 556 |
$dbh->do('INSERT INTO aqorders_items (ordernumber, itemnumber) VALUES (?, ?)', undef, $ordernumber2, $source_biblionumber); |
| 557 |
|
| 558 |
my $reserve_id1 = C4::Reserves::AddReserve({ |
| 559 |
branch => $library->branchcode, |
| 560 |
borrowernumber => $borrowernumber, |
| 561 |
biblionumber => $source_biblionumber, |
| 562 |
itemnumber => $itemnumber1, |
| 563 |
title => 'title' |
| 564 |
}); |
| 565 |
|
| 566 |
my $reserve_id2 = C4::Reserves::AddReserve({ |
| 567 |
branch => $library->branchcode, |
| 568 |
borrowernumber => $patron->borrowernumber, |
| 569 |
biblionumber => $source_biblionumber, |
| 570 |
itemnumber => $itemnumber2, |
| 571 |
title => 'title' |
| 572 |
}); |
| 573 |
|
| 574 |
$dbh->do("INSERT INTO tmp_holdsqueue (surname,borrowernumber,itemnumber,biblionumber) VALUES ('Clamp',?,?,?)", undef, $borrowernumber, $itemnumber1, $source_biblionumber); |
| 575 |
$dbh->do("INSERT INTO tmp_holdsqueue (surname,borrowernumber,itemnumber,biblionumber) VALUES ('Clamp',?,?,?)", undef, $borrowernumber, $itemnumber2, $source_biblionumber); |
| 576 |
|
| 577 |
$dbh->do('INSERT INTO hold_fill_targets (borrowernumber,itemnumber,biblionumber) VALUES (?,?,?)', undef, $borrowernumber, $itemnumber1, $source_biblionumber); |
| 578 |
$dbh->do('INSERT INTO hold_fill_targets (borrowernumber,itemnumber,biblionumber) VALUES (?,?,?)', undef, $borrowernumber, $itemnumber2, $source_biblionumber); |
| 579 |
|
| 580 |
$dbh->do('INSERT INTO linktracker (borrowernumber,itemnumber,biblionumber) VALUES (?,?,?)', undef, $borrowernumber, $itemnumber1, $source_biblionumber); |
| 581 |
$dbh->do('INSERT INTO linktracker (borrowernumber,itemnumber,biblionumber) VALUES (?,?,?)', undef, $borrowernumber, $itemnumber2, $source_biblionumber); |
| 582 |
|
| 583 |
$item1->move_to_biblio($target_biblio); |
| 584 |
|
| 585 |
my @result = $dbh->selectrow_array('SELECT biblionumber FROM items WHERE itemnumber = ?', undef, $itemnumber1); |
| 586 |
is($result[0], $target_biblio->biblionumber, 'Correct biblionumber in the moved item'); |
| 587 |
|
| 588 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM items WHERE itemnumber = ?', undef, $itemnumber2); |
| 589 |
is($result[0], $source_biblionumber, 'Correct biblionumber in the unmoved item'); |
| 590 |
|
| 591 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM aqorders WHERE ordernumber = ?', undef, $ordernumber1); |
| 592 |
is($result[0], $target_biblio->biblionumber, 'Correct biblionumber in aqorders for order with the moved item'); |
| 593 |
|
| 594 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM aqorders WHERE ordernumber = ?', undef, $ordernumber2); |
| 595 |
is($result[0], $source_biblionumber, 'Correct biblionumber in aqorders for order with the unmoved item'); |
| 596 |
|
| 597 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM reserves WHERE reserve_id = ?', undef, $reserve_id1); |
| 598 |
is($result[0], $target_biblio->biblionumber, 'Correct biblionumber in reserves for moved item'); |
| 599 |
|
| 600 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM reserves WHERE reserve_id = ?', undef, $reserve_id2); |
| 601 |
is($result[0], $source_biblionumber, 'Correct biblionumber in reserves for unmoved item'); |
| 602 |
|
| 603 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM tmp_holdsqueue WHERE itemnumber = ?', undef, $itemnumber1); |
| 604 |
is($result[0], $target_biblio->biblionumber, 'Correct biblionumber in tmp_holdsqueue for moved item'); |
| 605 |
|
| 606 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM tmp_holdsqueue WHERE itemnumber = ?', undef, $itemnumber2); |
| 607 |
is($result[0], $source_biblionumber, 'Correct biblionumber in tmp_holdsqueue for unmoved item'); |
| 608 |
|
| 609 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM hold_fill_targets WHERE itemnumber = ?', undef, $itemnumber1); |
| 610 |
is($result[0], $target_biblio->biblionumber, 'Correct biblionumber in hold_fill_targets for moved item'); |
| 611 |
|
| 612 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM hold_fill_targets WHERE itemnumber = ?', undef, $itemnumber2); |
| 613 |
is($result[0], $source_biblionumber, 'Correct biblionumber in hold_fill_targets for unmoved item'); |
| 614 |
|
| 615 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM linktracker WHERE itemnumber = ?', undef, $itemnumber1); |
| 616 |
is($result[0], $target_biblio->biblionumber, 'Correct biblionumber in linktracker for moved item'); |
| 617 |
|
| 618 |
@result = $dbh->selectrow_array('SELECT biblionumber FROM linktracker WHERE itemnumber = ?', undef, $itemnumber2); |
| 619 |
is($result[0], $source_biblionumber, 'Correct biblionumber in linktracker for unmoved item'); |
| 620 |
|
| 621 |
$schema->storage->txn_rollback; |
| 622 |
}; |