From 004444377faec0ccfeba230f8c045c05489d4bdb Mon Sep 17 00:00:00 2001 From: Julian Maurice Date: Thu, 13 Jun 2013 12:44:11 +0000 Subject: [PATCH] Bug 5349: Add unit tests for TransferOrder --- t/db_dependent/Acquisition/TransferOrder.t | 86 ++++++++++++++++++++++++++++ 1 files changed, 86 insertions(+), 0 deletions(-) create mode 100644 t/db_dependent/Acquisition/TransferOrder.t diff --git a/t/db_dependent/Acquisition/TransferOrder.t b/t/db_dependent/Acquisition/TransferOrder.t new file mode 100644 index 0000000..fd294e2 --- /dev/null +++ b/t/db_dependent/Acquisition/TransferOrder.t @@ -0,0 +1,86 @@ +#!/usr/bin/perl + +use Modern::Perl; + +use Test::More; +use C4::Acquisition; +use C4::Biblio; +use C4::Items; +use C4::Bookseller; +use C4::Budgets; +use MARC::Record; + +my $booksellerid1 = C4::Bookseller::AddBookseller( + { + name => "my vendor 1", + address1 => "bookseller's address", + phone => "0123456", + active => 1 + } +); + +my $basketno1 = C4::Acquisition::NewBasket( + $booksellerid1 +); + +my $booksellerid2 = C4::Bookseller::AddBookseller( + { + name => "my vendor 2", + address1 => "bookseller's address", + phone => "0123456", + active => 1 + } +); + +my $basketno2 = C4::Acquisition::NewBasket( + $booksellerid2 +); + +my $budgetid = C4::Budgets::AddBudget( + { + budget_code => "budget_code_test_transferorder", + budget_name => "budget_name_test_transferorder", + } +); + +my $budget = C4::Budgets::GetBudget( $budgetid ); + +my ($biblionumber, $biblioitemnumber) = AddBiblio(MARC::Record->new, ''); +my $itemnumber = AddItem({}, $biblionumber); + +my ( undef, $ordernumber ) = C4::Acquisition::NewOrder( + { + basketno => $basketno1, + quantity => 24, + biblionumber => $biblionumber, + budget_id => $budget->{budget_id}, + } +); +NewOrderItem($itemnumber, $ordernumber); + +# Begin tests +my $order; +is(scalar GetOrders($basketno1), 1, "1 order in basket1"); +($order) = GetOrders($basketno1); +is(scalar GetItemnumbersFromOrder($order->{ordernumber}), 1, "1 item in basket1's order"); +is(scalar GetOrders($basketno2), 0, "0 order in basket2"); + +diag("Transfering order to basket2"); +my $newordernumber = TransferOrder($ordernumber, $basketno2); +is(scalar GetOrders($basketno1), 0, "0 order in basket1"); +is(scalar GetOrders($basketno2), 1, "1 order in basket2"); +($order) = GetOrders($basketno2); +is(scalar GetItemnumbersFromOrder($order->{ordernumber}), 1, "1 item in basket2's order"); + +END { + C4::Acquisition::DelOrder( $biblionumber, $ordernumber ); + C4::Acquisition::DelOrder( $biblionumber, $newordernumber ); + C4::Budgets::DelBudget( $budgetid ); + C4::Acquisition::DelBasket( $basketno1 ); + C4::Bookseller::DelBookseller( $booksellerid1 ); + C4::Acquisition::DelBasket( $basketno2 ); + C4::Bookseller::DelBookseller( $booksellerid2 ); + C4::Biblio::DelBiblio($biblionumber); +}; + +done_testing; -- 1.7.2.5