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

(-)a/t/db_dependent/Koha/Biblio/Metadata/Extractor/MARC.t (-1 / +56 lines)
Line 0 Link Here
0
- 
1
#!/usr/bin/perl
2
3
# Copyright 2024 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::Biblio::Metadata::Extractor;
29
30
my $schema  = Koha::Database->schema;
31
my $builder = t::lib::TestBuilder->new;
32
33
subtest 'get_control_number() tests' => sub {
34
35
    plan tests => 8;
36
37
    foreach my $marcflavour (qw( MARC21 UNIMARC )) {
38
        t::lib::Mocks::mock_preference( 'marcflavour', $marcflavour );
39
40
        my $identifier = "123ASD";
41
42
        my $record    = MARC::Record->new();
43
        my $extractor = Koha::Biblio::Metadata::Extractor->new( { metadata => $record } );
44
45
        is( $extractor->get_control_number, q{}, 'Returns an empty string if no 001' );
46
47
        $record->append_fields( MARC::Field->new( '001', q{} ) );
48
        is( $extractor->get_control_number, q{}, 'Returns an empty string if 001 empty' );
49
50
        $record->field('001')->replace_with( MARC::Field->new( '001', undef ) );
51
        is( $extractor->get_control_number, q{}, 'Returns an empty string if 001 was built with undef' );
52
53
        $record->field('001')->replace_with( MARC::Field->new( '001', $identifier ) );
54
        is( $extractor->get_control_number, $identifier, 'Returns the right value' );
55
    }
56
};

Return to bug 37380