Bug 31023: Unit tests
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit df184560a5
)
This commit is contained in:
parent
9eb3d8332a
commit
4b9106d995
1 changed files with 42 additions and 1 deletions
|
@ -6,9 +6,14 @@
|
|||
use strict;
|
||||
use warnings;
|
||||
|
||||
use Test::More tests => 4;
|
||||
use Test::MockModule;
|
||||
use Test::MockObject;
|
||||
use Test::More tests => 5;
|
||||
use t::lib::Mocks;
|
||||
use MARC::Record;
|
||||
|
||||
use C4::AuthoritiesMarc qw( FindDuplicateAuthority );
|
||||
|
||||
BEGIN {
|
||||
use_ok('C4::AuthoritiesMarc::MARC21', qw( default_auth_type_location fix_marc21_auth_type_location ));
|
||||
}
|
||||
|
@ -19,3 +24,39 @@ ok($result[1] eq 'a', "testing default_auth_type_location has first value 'a'");
|
|||
|
||||
my $marc_record = MARC::Record->new();
|
||||
is(C4::AuthoritiesMarc::MARC21::fix_marc21_auth_type_location($marc_record, '', ''), undef, "testing fix_marc21_auth_type_location returns undef with empty MARC record");
|
||||
|
||||
subtest "FindDuplicateAuthority tests" => sub {
|
||||
plan tests => 2;
|
||||
my $zebra_search_module = Test::MockModule->new( 'C4::Search' );
|
||||
$zebra_search_module->mock( 'SimpleSearch', sub {
|
||||
my $query = shift;
|
||||
return ( undef, [$query] );
|
||||
});
|
||||
$zebra_search_module->mock( 'new_record_from_zebra', sub {
|
||||
my (undef, $query ) = @_;
|
||||
my $marc = MARC::Record->new;
|
||||
$marc->append_fields(
|
||||
MARC::Field->new( '001', $query ),
|
||||
);
|
||||
return $marc;
|
||||
});
|
||||
my $es_search_module = Test::MockModule->new( 'Koha::SearchEngine::Elasticsearch::Search' );
|
||||
$es_search_module->mock( 'simple_search_compat', sub {
|
||||
my (undef, $query) = @_;
|
||||
return ( undef, [$query] );
|
||||
});
|
||||
|
||||
my $record = MARC::Record->new;
|
||||
$record->append_fields(
|
||||
MARC::Field->new('155', '', '', a => 'Potato' ),
|
||||
);
|
||||
|
||||
t::lib::Mocks::mock_preference( 'SearchEngine', 'Zebra' );
|
||||
my ($query) = FindDuplicateAuthority( $record, "GENRE/FORM" );
|
||||
is( $query, q{at:"GENRE/FORM" AND he:"Potato"}, "Query formed correctly for Zebra");
|
||||
|
||||
t::lib::Mocks::mock_preference( 'SearchEngine', 'Elasticsearch' );
|
||||
($query) = FindDuplicateAuthority( $record, "GENRE/FORM" );
|
||||
is( $query, q{at:"GENRE/FORM" AND he:"Potato"}, "Query formed correctly for Elasticsearch");
|
||||
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue