Bug 12557: UT: The item is not created
[koha.git] / t / db_dependent / Acquisition / GetOrdersByBiblionumber.t
1 #!/usr/bin/perl
2
3 use Modern::Perl;
4
5 use Test::More;
6 use C4::Acquisition;
7 use C4::Biblio;
8 use C4::Bookseller;
9 use C4::Budgets;
10 use MARC::Record;
11
12 #Start transaction
13 my $dbh = C4::Context->dbh;
14 $dbh->{AutoCommit} = 0;
15 $dbh->{RaiseError} = 1;
16
17 my $booksellerid = C4::Bookseller::AddBookseller(
18     {
19         name => "my vendor",
20         address1 => "bookseller's address",
21         phone => "0123456",
22         active => 1
23     }
24 );
25
26 my $basketno = C4::Acquisition::NewBasket(
27     $booksellerid
28 );
29
30 my $budgetid = C4::Budgets::AddBudget(
31     {
32         budget_code => "budget_code_test_getordersbybib",
33         budget_name => "budget_name_test_getordersbybib",
34     }
35 );
36
37 my $budget = C4::Budgets::GetBudget( $budgetid );
38
39 my ($ordernumber1, $ordernumber2, $ordernumber3);
40 my ($biblionumber1, $biblioitemnumber1) = AddBiblio(MARC::Record->new, '');
41 my ($biblionumber2, $biblioitemnumber2) = AddBiblio(MARC::Record->new, '');
42 ( undef, $ordernumber1 ) = C4::Acquisition::NewOrder(
43     {
44         basketno => $basketno,
45         quantity => 24,
46         biblionumber => $biblionumber1,
47         budget_id => $budget->{budget_id},
48     }
49 );
50
51 ( undef, $ordernumber2 ) = C4::Acquisition::NewOrder(
52     {
53         basketno => $basketno,
54         quantity => 42,
55         biblionumber => $biblionumber2,
56         budget_id => $budget->{budget_id},
57     }
58 );
59
60 ( undef, $ordernumber3 ) = C4::Acquisition::NewOrder(
61     {
62         basketno => $basketno,
63         quantity => 4,
64         biblionumber => $biblionumber2,
65         budget_id => $budget->{budget_id},
66     }
67 );
68
69 my @orders = GetOrdersByBiblionumber();
70 is(scalar(@orders), 0, 'GetOrdersByBiblionumber : no argument, return undef');
71
72 @orders = GetOrdersByBiblionumber( $biblionumber1 );
73 is(scalar(@orders), 1, '1 order on biblionumber 1');
74
75 @orders = GetOrdersByBiblionumber( $biblionumber2 );
76 is(scalar(@orders), 2, '2 orders on biblionumber 2');
77
78 #End transaction
79 $dbh->rollback;
80
81 done_testing;