Bug 5327 shifting database dependent modules and scripts to t/db_dependent
[koha.git] / t / db_dependent / lib / KohaTest / Acquisition / GetPendingOrders.pm
1 package KohaTest::Acquisition::GetPendingOrders;
2 use base qw( KohaTest::Acquisition );
3
4 use strict;
5 use warnings;
6
7 use Test::More;
8
9 use C4::Acquisition;
10
11 =head3 no_orders
12
13 at first, there should be no orders for our bookseller.
14
15 =cut
16
17 sub no_orders : Test( 1 ) {
18     my $self = shift;
19
20     my $orders = GetPendingOrders( $self->{'booksellerid'} );
21     is( scalar @$orders, 0, 'our new bookseller has no pending orders' )
22       or diag( Data::Dumper->Dump( [ $orders ], [ 'orders' ] ) );
23 }
24
25 =head3 new_order
26
27 we make an order, then see if it shows up in the pending orders
28
29 =cut
30
31 sub one_new_order : Test( 49 ) {
32     my $self = shift;
33
34     my ( $basketno, $ordernumber ) = $self->create_new_basket();
35
36     ok( $basketno, "basketno is $basketno" );
37     ok( $ordernumber, "ordernumber is $ordernumber" );
38     
39     my $orders = GetPendingOrders( $self->{'booksellerid'} );
40     is( scalar @$orders, 1, 'we successfully entered one order.' );
41
42     my @expectedfields = qw( basketno
43                              biblioitemnumber
44                              biblionumber
45                              booksellerinvoicenumber
46                              budgetdate
47                              cancelledby
48                              closedate
49                              creationdate
50                              currency
51                              datecancellationprinted
52                              datereceived
53                              ecost
54                              entrydate
55                              firstname
56                              freight
57                              gst
58                              listprice
59                              notes
60                              ordernumber
61                              purchaseordernumber
62                              quantity
63                              quantityreceived
64                              rrp
65                              serialid
66                              sort1
67                              sort2
68                              subscription
69                              supplierreference
70                              surname
71                              timestamp
72                              title
73                              totalamount
74                              unitprice );
75     my $firstorder = $orders->[0];
76     for my $field ( @expectedfields ) {
77         ok( exists( $firstorder->{ $field } ), "This order has a $field field" );
78     }
79     
80 }
81
82 1;