#!/usr/bin/perl
-use strict;
-use warnings;
-use C4::Branch;
+use Modern::Perl;
use Test::More tests => 4;
use MARC::Record;
+
+use C4::Branch;
use C4::Biblio;
use C4::Items;
+use C4::Members;
BEGIN {
- use FindBin;
- use lib $FindBin::Bin;
- use_ok('C4::Reserves');
+ use_ok('C4::Reserves');
}
# Setup Test------------------------
# Helper biblio.
diag("\nCreating biblio instance for testing.");
-my ($bibnum, $title, $bibitemnum) = create_helper_biblio();
-
+my $bib = MARC::Record->new();
+my $title = 'Silence in the library';
+$bib->append_fields(
+ MARC::Field->new('100', ' ', ' ', a => 'Moffat, Steven'),
+ MARC::Field->new('245', ' ', ' ', a => $title),
+);
+my ($bibnum, $bibitemnum);
+($bibnum, $title, $bibitemnum) = AddBiblio($bib, '');
# Helper item for that biblio.
diag("Creating item instance for testing.");
my ($item_bibnum, $item_bibitemnum, $itemnumber) = AddItem({ homebranch => 'CPL', holdingbranch => 'CPL' } , $bibnum);
my $testbarcode = '97531';
ModItem({ barcode => $testbarcode }, $bibnum, $itemnumber);
-# Get a borrower
-my $dbh = C4::Context->dbh;
-my $query = qq/SELECT borrowernumber
- FROM borrowers
- LIMIT 1/;
-my $sth = $dbh->prepare($query);
-$sth->execute;
-my $borrower = $sth->fetchrow_hashref;
-
-my $borrowernumber = $borrower->{'borrowernumber'};
+# Create a borrower
+my %data = (
+ cardnumber => 'CARDNUMBER42',
+ firstname => 'my firstname',
+ surname => 'my surname',
+ categorycode => 'S',
+ branchcode => 'CPL',
+);
+my $borrowernumber = AddMember(%data);
+my $borrower = GetMember( borrowernumber => $borrowernumber );
my $biblionumber = $bibnum;
my $barcode = $testbarcode;
AddReserve($branch, $borrowernumber, $biblionumber,
$constraint, $bibitems, $priority, $resdate, $expdate, $notes,
$title, $checkitem, $found);
-
+
my ($status, $reserve, $all_reserves) = CheckReserves($itemnumber, $barcode);
-ok($status eq "Reserved", "CheckReserves Test 1");
+
+is($status, "Reserved", "CheckReserves Test 1");
($status, $reserve, $all_reserves) = CheckReserves($itemnumber);
-ok($status eq "Reserved", "CheckReserves Test 2");
+is($status, "Reserved", "CheckReserves Test 2");
($status, $reserve, $all_reserves) = CheckReserves(undef, $barcode);
-ok($status eq "Reserved", "CheckReserves Test 3");
+is($status, "Reserved", "CheckReserves Test 3");
# Teardown Test---------------------
# Delete item.
diag("Deleting item testing instance.");
+my $dbh = C4::Context->dbh;
DelItem($dbh, $bibnum, $itemnumber);
# Delete helper Biblio.
diag("Deleting biblio testing instance.");
DelBiblio($bibnum);
-# Helper method to set up a Biblio.
-sub create_helper_biblio {
- my $bib = MARC::Record->new();
- my $title = 'Silence in the library';
- $bib->append_fields(
- MARC::Field->new('100', ' ', ' ', a => 'Moffat, Steven'),
- MARC::Field->new('245', ' ', ' ', a => $title),
- );
- return ($bibnum, $title, $bibitemnum) = AddBiblio($bib, '');
-}
+# Delete borrower
+diag("Deleting borrower.");
+DelMember($borrowernumber);