View | Details | Raw Unified | Return to bug 25670
Collapse All | Expand All

(-)a/t/db_dependent/Koha/Acquisition/Orders.t (-1 / +73 lines)
Line 0 Link Here
0
- 
1
#!/usr/bin/perl
2
3
# Copyright 2020 Koha Development team
4
#
5
# This file is part of Koha
6
#
7
# Koha is free software; you can redistribute it and/or modify it
8
# under the terms of the GNU General Public License as published by
9
# the Free Software Foundation; either version 3 of the License, or
10
# (at your option) any later version.
11
#
12
# Koha is distributed in the hope that it will be useful, but
13
# WITHOUT ANY WARRANTY; without even the implied warranty of
14
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
# GNU General Public License for more details.
16
#
17
# You should have received a copy of the GNU General Public License
18
# along with Koha; if not, see <http://www.gnu.org/licenses>.
19
20
use Modern::Perl;
21
22
use Test::More tests => 1;
23
use Test::Exception;
24
25
use t::lib::TestBuilder;
26
use t::lib::Mocks;
27
28
use Koha::Database;
29
30
my $schema  = Koha::Database->schema;
31
my $builder = t::lib::TestBuilder->new;
32
33
subtest 'filter_by_id_including_transfers() tets' => sub {
34
35
    plan tests => 6;
36
37
    $schema->storage->txn_begin;
38
39
    my $order_1 = $builder->build_object({ class => 'Koha::Acquisition::Orders' });
40
    my $order_2 = $builder->build_object({ class => 'Koha::Acquisition::Orders' });
41
    my $order_3 = $builder->build_object({ class => 'Koha::Acquisition::Orders' });
42
43
    $builder->build(
44
        {
45
            source => 'AqordersTransfer',
46
            value  => {
47
                ordernumber_from => $order_1->ordernumber,
48
                ordernumber_to   => $order_2->ordernumber
49
            }
50
        }
51
    );
52
53
    my $orders_rs = Koha::Acquisition::Orders->search;
54
    my $count = $orders_rs->count;
55
56
    throws_ok
57
        { $orders_rs->filter_by_id_including_transfers() }
58
        'Koha::Exceptions::MissingParameter',
59
        'Exception thrown correctly';
60
61
    $orders_rs = $orders_rs->filter_by_id_including_transfers({ ordernumber => $order_1->ordernumber });
62
63
    is( $orders_rs->count, 2, 'The two referenced orders are returned' );
64
    is( $orders_rs->next->ordernumber, $order_1->ordernumber, 'The right order is returned' );
65
    is( $orders_rs->next->ordernumber, $order_2->ordernumber, 'The right order is returned' );
66
67
    $orders_rs = $orders_rs->filter_by_id_including_transfers({ ordernumber => $order_2->ordernumber });
68
69
    is( $orders_rs->count, 1, 'Only one order related to the specified ordernumber' );
70
    is( $orders_rs->next->ordernumber, $order_2->ordernumber, 'The right order is returned' );
71
72
    $schema->storage->txn_rollback;
73
}

Return to bug 25670