Bug 5549 : Need a testscript for rolling loans
authorColin Campbell <colin.campbell@ptfs-europe.com>
Wed, 15 Jun 2011 09:17:42 +0000 (10:17 +0100)
committerChris Cormack <chrisc@catalyst.net.nz>
Mon, 19 Mar 2012 23:22:22 +0000 (12:22 +1300)
Note from Chris C:
This needs to be changed to work with the sample data, follow up to be
done

t/rollingloans.t [new file with mode: 0644]

diff --git a/t/rollingloans.t b/t/rollingloans.t
new file mode 100644 (file)
index 0000000..9535ff5
--- /dev/null
@@ -0,0 +1,41 @@
+
+use strict;
+use warnings;
+use 5.010;
+use C4::Context;
+use C4::Circulation;
+use C4::Members;
+
+use Test::More tests => 6;
+C4::Context->_new_userenv(1234567);
+C4::Context->set_userenv(91, 'CLIstaff', '23529001223661', 'CPL',
+                         'CPL', 'CPL', '', 'cc@cscnet.co.uk');
+
+
+my $test_patron = '23529001223651';
+my $test_item_fic = '502326000402';
+my $test_item_24 = '502326000404';
+my $test_item_48 = '502326000403';
+
+for my $item_barcode ( $test_item_fic, $test_item_24, $test_item_48) {
+    my $duedate = try_issue($test_patron, $item_barcode);
+    isa_ok($duedate, 'DateTime');
+    my $ret_ok = try_return($item_barcode);
+    is($ret_ok, 1, 'Return succeeded');
+}
+
+
+sub try_issue {
+    my ($cardnumber, $item ) = @_;
+    my $issuedate = '2011-05-16';
+    my $borrower = GetMemberDetails(0, $cardnumber);
+    my ($issuingimpossible,$needsconfirmation) = CanBookBeIssued( $borrower, $item );
+       my $due_date = AddIssue($borrower, $item, undef, 0, $issuedate);
+    return $due_date;
+}
+
+sub try_return {
+    my $barcode = shift;
+    my ($ret, $messages, $iteminformation, $borrower) = AddReturn($barcode);
+    return $ret;
+}