Bug 34639: Add tests
To reproduce:
1. Add an item to library A
2. Go to Circulation -> Transfer
3. Transfer the item from library A to another library B
4. Set your currently logged in library to library B
5. Check-in the item
6. Observe message "Item received from A"
7. View the bibliographic record of the item (catalogue/detail.pl)
8. Observe item in "In transit from A to B since xx/xx/xxxx Available"
To test:
1. prove t/db_dependent/Koha/Item.t
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Aleisha Amohia <aleishaamohia@hotmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 1395bc00eb
)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This commit is contained in:
parent
d1d9a33535
commit
03af78e761
1 changed files with 68 additions and 1 deletions
|
@ -20,7 +20,7 @@
|
|||
use Modern::Perl;
|
||||
use utf8;
|
||||
|
||||
use Test::More tests => 29;
|
||||
use Test::More tests => 30;
|
||||
use Test::Exception;
|
||||
use Test::MockModule;
|
||||
|
||||
|
@ -1175,6 +1175,73 @@ subtest 'get_transfers' => sub {
|
|||
$schema->storage->txn_rollback;
|
||||
};
|
||||
|
||||
subtest 'Test for relationship between item and current_branchtransfers' => sub {
|
||||
plan tests => 4;
|
||||
|
||||
$schema->storage->txn_begin;
|
||||
|
||||
my $item = $builder->build_sample_item();
|
||||
my $transfer = $builder->build_object(
|
||||
{
|
||||
class => 'Koha::Item::Transfers',
|
||||
value => {
|
||||
itemnumber => $item->itemnumber,
|
||||
datesent => dt_from_string,
|
||||
datearrived => dt_from_string,
|
||||
datecancelled => undef,
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
my $transfer_item = $transfer->item;
|
||||
my $biblio = Koha::Biblios->find( $transfer_item->biblionumber );
|
||||
|
||||
my $current_branchtransfers = Koha::Items->search(
|
||||
{ 'me.itemnumber' => $transfer_item->itemnumber },
|
||||
{ prefetch => ['current_branchtransfers'] }
|
||||
);
|
||||
|
||||
my $item_with_branchtransfers = $current_branchtransfers->next;
|
||||
|
||||
is(
|
||||
$transfer_item->itemnumber,
|
||||
$item_with_branchtransfers->itemnumber,
|
||||
'following two items are the same'
|
||||
);
|
||||
|
||||
# following two tests should produce the same result
|
||||
is(
|
||||
$transfer_item->get_transfer,
|
||||
undef,
|
||||
'Koha::Item->get_transfer returns undef with no active transfers'
|
||||
);
|
||||
is(
|
||||
$item_with_branchtransfers->get_transfer, undef,
|
||||
'prefetched result->get_transfer returns undef with no active transfers'
|
||||
);
|
||||
|
||||
$transfer->set(
|
||||
{
|
||||
datearrived => undef,
|
||||
}
|
||||
)->store;
|
||||
|
||||
$current_branchtransfers = Koha::Items->search(
|
||||
{ 'me.itemnumber' => $transfer_item->itemnumber },
|
||||
{ prefetch => ['current_branchtransfers'] }
|
||||
);
|
||||
|
||||
$item_with_branchtransfers = $current_branchtransfers->next;
|
||||
|
||||
is(
|
||||
$transfer_item->get_transfer->branchtransfer_id,
|
||||
$item_with_branchtransfers->get_transfer->branchtransfer_id,
|
||||
'an active transfer produces same branchtransfer_id for both methods'
|
||||
);
|
||||
|
||||
$schema->storage->txn_rollback;
|
||||
};
|
||||
|
||||
subtest 'Tests for relationship between item and item_orders via aqorders_item' => sub {
|
||||
plan tests => 3;
|
||||
|
||||
|
|
Loading…
Reference in a new issue