Koha/t/db_dependent/Acquisition.t
Andrew Moore a5325c4fcc use bind variables in C4::Acquisition::GetPendingOrders
I improved the tests a bit for this module so that they at least skip
if there's not enough data in the database to test with.
I was unable to test the actual execution path through the change I actually made.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-19 15:46:23 -05:00

73 lines
2.4 KiB
Perl
Executable file

#!/usr/bin/perl
#
# This Koha test module is a stub!
# Add more tests here!!!
use strict;
use warnings;
use Data::Dumper;
use C4::Bookseller;
use Test::More tests => 37;
BEGIN {
use_ok('C4::Acquisition');
}
my $booksellerid = 1;
my $booksellerinfo = GetBookSellerFromId( $booksellerid );
# diag( Data::Dumper->Dump( [ $booksellerinfo ], [ 'booksellerinfo' ] ) );
SKIP: {
skip 'No booksellers in database, cannot test baskets', 2 unless $booksellerinfo;
my ($basket, $basketno);
ok($basketno = NewBasket(1,1), "NewBasket( 1 , 1 ) returns $basketno");
ok($basket = GetBasket($basketno), "GetBasket($basketno) returns $basket");
}
my $supplierid = 1;
my $grouped = 0;
my $orders = GetPendingOrders( $supplierid, $grouped );
isa_ok( $orders, 'ARRAY' );
SKIP: {
skip 'No relevant orders in database, cannot test baskets', 33 unless( scalar @$orders );
# diag( Data::Dumper->Dump( [ $orders ], [ 'orders' ] ) );
my @expectedfields = qw( basketno
biblioitemnumber
biblionumber
booksellerinvoicenumber
budgetdate
cancelledby
closedate
creationdate
currency
datecancellationprinted
datereceived
ecost
entrydate
firstname
freight
gst
listprice
notes
ordernumber
purchaseordernumber
quantity
quantityreceived
rrp
serialid
sort1
sort2
subscription
supplierreference
surname
timestamp
title
totalamount
unitprice );
my $firstorder = $orders->[0];
for my $field ( @expectedfields ) {
ok( exists( $firstorder->{ $field } ), "This order has a $field field" );
}
}