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

(-)a/Koha/Acquisition/Fund.pm (+23 lines)
Lines 29-34 Koha::Acquisition::Fund object class Link Here
29
29
30
=head2 Class methods
30
=head2 Class methods
31
31
32
=head3 to_api
33
34
    my $json = $fund->to_api;
35
36
Overloaded method that returns a JSON representation of the Koha::Acquisition::Fund object,
37
suitable for API output.
38
39
=cut
40
41
sub to_api {
42
    my ( $self, $args ) = @_;
43
44
    # Preserve conflicting attribute names
45
    my $budget_id        = $self->budget_id;
46
    my $budget_period_id = $self->budget_period_id;
47
48
    my $json_fund = $self->SUPER::to_api($args);
49
    $json_fund->{fund_id}   = $budget_id;
50
    $json_fund->{budget_id} = $budget_period_id;
51
52
    return $json_fund;
53
}
54
32
=head3 to_api_mapping
55
=head3 to_api_mapping
33
56
34
This method returns the mapping for representing a Koha::Acquisition::Fund object
57
This method returns the mapping for representing a Koha::Acquisition::Fund object
(-)a/t/db_dependent/Koha/Acquisition/Fund.t (-1 / +44 lines)
Line 0 Link Here
0
- 
1
#!/usr/bin/perl
2
3
# Copyright 2019 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
24
use t::lib::TestBuilder;
25
26
use Koha::Database;
27
28
my $schema  = Koha::Database->schema;
29
my $builder = t::lib::TestBuilder->new;
30
31
subtest 'to_api() tests' => sub {
32
33
    plan tests => 2;
34
35
    $schema->storage->txn_begin;
36
37
    my $fund = $builder->build_object({ class => 'Koha::Acquisition::Funds' });
38
    my $fund_api = $fund->to_api();
39
40
    is( $fund->budget_id, $fund_api->{fund_id}, 'Mapping is correct for budget_id' );
41
    is( $fund->budget_period_id, $fund_api->{budget_id}, 'Mapping is correct for budget_period_id' );
42
43
    $schema->storage->txn_rollback;
44
};

Return to bug 18731