Bug 10698: give C4::Circulation::DeleteTransfer() a return value
authorKenza Zaki <kenza.zaki@biblibre.com>
Thu, 8 Aug 2013 08:39:26 +0000 (10:39 +0200)
committerGalen Charlton <gmc@esilibrary.com>
Wed, 9 Oct 2013 03:46:53 +0000 (03:46 +0000)
This patch adds return values to DeleteTransfer:
Undef if no parameters are given
1 if a Transfer is deleted
0E0 if a wrong parameter is given

It also fixes some unit tests in t/db_dependent/Circulation_transfers.t

To test:
prove t/db_dependent/Circulation_transfers.t
t/db_dependent/Circulation_transfers.t .. ok
All tests successful.
Files=1, Tests=14, 20 wallclock secs ( 0.03 usr  0.00 sys +  0.39 cusr  0.02 csys =  0.44 CPU)
Result: PASS

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Comment: Applied 10681 and 10692 before 10698
Run prove t/db_dependent/Circulation_transfers.t without errors
No koha-qa errors on all 3 patches

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
C4/Circulation.pm
t/db_dependent/Circulation_transfers.t

index bf2cf9d..6516edd 100644 (file)
@@ -2828,13 +2828,14 @@ sub GetTransfersFromTo {
 
 sub DeleteTransfer {
     my ($itemnumber) = @_;
+    return unless $itemnumber;
     my $dbh          = C4::Context->dbh;
     my $sth          = $dbh->prepare(
         "DELETE FROM branchtransfers
          WHERE itemnumber=?
          AND datearrived IS NULL "
     );
-    $sth->execute($itemnumber);
+    return $sth->execute($itemnumber);
 }
 
 =head2 AnonymiseIssueHistory
index 7f4dff1..043cf2e 100644 (file)
@@ -9,7 +9,7 @@ use C4::Circulation;
 use Koha::DateUtils;
 use DateTime::Duration;
 
-use Test::More tests => 17;
+use Test::More tests => 19;
 
 BEGIN {
     use_ok('C4::Circulation');
@@ -198,8 +198,8 @@ is(C4::Circulation::DeleteBranchTransferLimits('B'),'0E0',"With a wrong id Delet
 is( C4::Circulation::DeleteTransfer($item_id1),
     1, "A the item1's transfer has been deleted" );
 #FIXME :The following tests should pass but don't because currently the routine DeleteTransfer returns nothing
-#is(C4::Circulation::DeleteTransfer(),undef,"Without itemid DeleteTransfer returns undef");
-#is(C4::Circulation::DeleteTransfer(-1),0,"with a wrong itemid DeleteTranfer returns 0");
+is(C4::Circulation::DeleteTransfer(),undef,"Without itemid DeleteTransfer returns undef");
+is(C4::Circulation::DeleteTransfer(-1),'0E0',"with a wrong itemid DeleteTranfer returns 0E0");
 
 #End transaction
 $dbh->rollback;