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:
Lari Taskula 2023-08-29 09:34:04 +00:00 committed by Fridolin Somers
parent d1d9a33535
commit 03af78e761

View file

@ -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;