}
# Log the renewal
- UpdateStats({branch => $branch,
- type => 'renew',
- amount => $charge,
- itemnumber => $itemnumber,
- itemtype => $item->{itype},
- borrowernumber => $borrowernumber,
- ccode => $item->{'ccode'}}
- );
- return $datedue;
+ UpdateStats(
+ {
+ branch => C4::Context->userenv ? C4::Context->userenv->{branch} : $branch,
+ type => 'renew',
+ amount => $charge,
+ itemnumber => $itemnumber,
+ itemtype => $item->{itype},
+ borrowernumber => $borrowernumber,
+ ccode => $item->{'ccode'}
+ }
+ );
+
+ return $datedue;
}
sub GetRenewCount {
use Modern::Perl;
-use Test::More tests => 32;
+use Test::More tests => 33;
use DateTime::Duration;
use t::lib::Mocks;
$dbh->do(q|DELETE FROM categories|);
$dbh->do(q|DELETE FROM accountlines|);
$dbh->do(q|DELETE FROM issuingrules|);
+$dbh->do(q|DELETE FROM reserves|);
+$dbh->do(q|DELETE FROM old_reserves|);
+$dbh->do(q|DELETE FROM statistics|);
# Generate sample datas
my $itemtype = $builder->build(
)->{itemtype};
my $branchcode_1 = $builder->build({ source => 'Branch' })->{branchcode};
my $branchcode_2 = $builder->build({ source => 'Branch' })->{branchcode};
+my $branchcode_3 = $builder->build({ source => 'Branch' })->{branchcode};
my $categorycode = $builder->build({
source => 'Category',
value => { enrolmentfee => undef }
$branchcode_1, 'email@example.org'
);
+my @USERENV_DIFFERENT_LIBRARY = (
+ $borrower_id1, 'test', 'MASTERTEST', 'firstname', $branchcode_3,
+ $branchcode_3, 'email@example.org'
+);
+
C4::Context->_new_userenv('DUMMY_SESSION_ID');
C4::Context->set_userenv(@USERENV);
$countaccount = $sth -> fetchrow_array;
is ($countaccount,1,"1 accountline has been added");
-#Test AddRenewal
-my $datedue3 =
- AddRenewal( $borrower_id1, $item_id1, $branchcode_1,
- $datedue1, $daysago10 );
+# Test AddRenewal
+
+# Let's renew this one at a different library for statistical purposes to test Bug 17781
+C4::Context->set_userenv(@USERENV_DIFFERENT_LIBRARY);
+my $datedue3 = AddRenewal( $borrower_id1, $item_id1, $branchcode_1, $datedue1, $daysago10 );
+C4::Context->set_userenv(@USERENV);
+
like(
$datedue3,
qr/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}/,
"AddRenewal returns a date"
);
+my $stat = $dbh->selectrow_hashref("SELECT * FROM statistics WHERE type = 'renew' AND borrowernumber = ? AND itemnumber = ? AND branch = ?", undef, $borrower_id1, $item_id1, $branchcode_3 );
+ok( $stat, "Bug 17781 - 'Improper branchcode set during renewal' still fixed" );
+
+
#Test GetBiblioIssues
is( GetBiblioIssues(), undef, "GetBiblio Issues without parameters" );