bug 14504: (QA followup) fixing DelItemCheck arguments
[koha.git] / t / db_dependent / Circulation / IsItemIssued.t
1 use Modern::Perl;
2 use Test::More tests => 5;
3
4 use C4::Biblio;
5 use C4::Circulation;
6 use C4::Items;
7 use C4::Members;
8 use Koha::Database;
9 use Koha::DateUtils;
10
11 use t::lib::TestBuilder;
12
13 use MARC::Record;
14
15 *C4::Context::userenv = \&Mock_userenv;
16
17 my $schema = Koha::Database->schema;
18 $schema->storage->txn_begin;
19 my $builder = t::lib::TestBuilder->new;
20 my $dbh = C4::Context->dbh;
21
22 my $library = $builder->build({
23     source => 'Branch',
24 });
25
26 my $borrowernumber = AddMember(
27     firstname =>  'my firstname',
28     surname => 'my surname',
29     categorycode => 'S',
30     branchcode => $library->{branchcode},
31 );
32
33
34 my $borrower = GetMember( borrowernumber => $borrowernumber );
35 my $record = MARC::Record->new();
36 my ( $biblionumber, $biblioitemnumber ) = AddBiblio( $record, '' );
37
38 my ( undef, undef, $itemnumber ) = AddItem( { homebranch => $library->{branchcode}, holdingbranch => $library->{branchcode}, barcode => 'i_dont_exist' }, $biblionumber );
39 my $item = GetItem( $itemnumber );
40
41 is ( IsItemIssued( $item->{itemnumber} ), 0, "item is not on loan at first" );
42
43 AddIssue($borrower, 'i_dont_exist');
44 is ( IsItemIssued( $item->{itemnumber} ), 1, "item is now on loan" );
45
46 is(
47     DelItemCheck( $biblionumber, $itemnumber),
48     'book_on_loan',
49     'item that is on loan cannot be deleted',
50 );
51
52 AddReturn('i_dont_exist', $library->{branchcode});
53 is ( IsItemIssued( $item->{itemnumber} ), 0, "item has been returned" );
54
55 is(
56     DelItemCheck( $biblionumber, $itemnumber),
57     1,
58     'item that is not on loan can be deleted',
59 );
60
61 # C4::Context->userenv
62 sub Mock_userenv {
63     return { branch => $library->{branchcode} };
64 }