4bdd4a89f5f7932150e66226b6cf33ab06b71001
[koha.git] / t / db_dependent / Acquisition / GetOrdersByBiblionumber.t
1 #!/usr/bin/env 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 my $booksellerid = C4::Bookseller::AddBookseller(
13     {
14         name => "my vendor",
15         address1 => "bookseller's address",
16         phone => "0123456",
17         active => 1
18     }
19 );
20
21 my $basketno = C4::Acquisition::NewBasket(
22     $booksellerid
23 );
24
25 my $budgetid = C4::Budgets::AddBudget(
26     {
27         budget_code => "budget_code_test_getordersbybib",
28         budget_name => "budget_name_test_getordersbybib",
29     }
30 );
31
32 my $budget = C4::Budgets::GetBudget( $budgetid );
33
34 my ($ordernumber1, $ordernumber2, $ordernumber3);
35 my ($biblionumber1, $biblioitemnumber1) = AddBiblio(MARC::Record->new, '');
36 my ($biblionumber2, $biblioitemnumber2) = AddBiblio(MARC::Record->new, '');
37 ( undef, $ordernumber1 ) = C4::Acquisition::NewOrder(
38     {
39         basketno => $basketno,
40         quantity => 24,
41         biblionumber => $biblionumber1,
42         budget_id => $budget->{budget_id},
43     }
44 );
45
46 ( undef, $ordernumber2 ) = C4::Acquisition::NewOrder(
47     {
48         basketno => $basketno,
49         quantity => 42,
50         biblionumber => $biblionumber2,
51         budget_id => $budget->{budget_id},
52     }
53 );
54
55 ( undef, $ordernumber3 ) = C4::Acquisition::NewOrder(
56     {
57         basketno => $basketno,
58         quantity => 4,
59         biblionumber => $biblionumber2,
60         budget_id => $budget->{budget_id},
61     }
62 );
63
64 my @orders = GetOrdersByBiblionumber();
65 is(scalar(@orders), 0, 'GetOrdersByBiblionumber : no argument, return undef');
66
67 @orders = GetOrdersByBiblionumber( $biblionumber1 );
68 is(scalar(@orders), 1, '1 order on biblionumber 1');
69
70 @orders = GetOrdersByBiblionumber( $biblionumber2 );
71 is(scalar(@orders), 2, '2 orders on biblionumber 2');
72
73 END {
74     C4::Acquisition::DelOrder( 1, $ordernumber1 );
75     C4::Acquisition::DelOrder( 2, $ordernumber2 );
76     C4::Acquisition::DelOrder( 3, $ordernumber3 );
77     C4::Budgets::DelBudget( $budgetid );
78     C4::Acquisition::DelBasket( $basketno );
79     C4::Bookseller::DelBookseller( $booksellerid );
80     C4::Biblio::DelBiblio($biblionumber1);
81     C4::Biblio::DelBiblio($biblionumber2);
82 };
83
84 done_testing;