From 19d1496c30bec9749aa400321a89d1bb4e4e7ded Mon Sep 17 00:00:00 2001 From: Tomas Cohen Arazi Date: Fri, 17 Mar 2023 09:51:09 -0300 Subject: [PATCH] Bug 33100: (QA follow-up) Trivial QA fixes Signed-off-by: Tomas Cohen Arazi --- t/db_dependent/Heading.t | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/t/db_dependent/Heading.t b/t/db_dependent/Heading.t index 20f94ac3b3e..c839dea56e5 100755 --- a/t/db_dependent/Heading.t +++ b/t/db_dependent/Heading.t @@ -69,24 +69,29 @@ subtest "_search tests" => sub { t::lib::Mocks::mock_preference('SearchEngine', 'Elasticsearch'); my $search = Test::MockModule->new('Koha::SearchEngine::Elasticsearch::Search'); - $search->mock('search_auth_compat', sub { - my $self = shift; - my $search_query = shift; - return $search_query; - }); - - my $field = MARC::Field->new( '100', ' ', '', a => 'Yankovic, Al', d => '1959-,' ); - my $heading = C4::Heading->new_from_field($field); - my $search_query = $heading->_search( 'match-heading' ); - my $terms = $search_query->{query}->{bool}->{must}; + $search->mock( + 'search_auth_compat', + sub { + my $self = shift; + my $search_query = shift; + return $search_query; + } + ); + + my ( $field, $heading, $search_query, $terms ); + + $field = MARC::Field->new( '100', ' ', '', a => 'Yankovic, Al', d => '1959-,' ); + $heading = C4::Heading->new_from_field($field); + $search_query = $heading->_search( 'match-heading' ); + $terms = $search_query->{query}->{bool}->{must}; is_deeply( $terms->[0], { term => { 'match-heading.ci_raw' => 'Yankovic, Al 1959' } }, "Search formed as expected for a non-subject field with single punctuation mark"); - my $field = MARC::Field->new( '100', ' ', '', a => 'Yankovic, Al', d => '1959-,', e => '[author]' ); - my $heading = C4::Heading->new_from_field($field); - my $search_query = $heading->_search( 'match-heading' ); - my $terms = $search_query->{query}->{bool}->{must}; - is_deeply( $terms->[0], { term => { 'match-heading.ci_raw' => 'Yankovic, Al 1959' } }, "Search formed as expected for a non-subject field with doulbe punctuation, hyphen+comma"); + $field = MARC::Field->new( '100', ' ', '', a => 'Yankovic, Al', d => '1959-,', e => '[author]' ); + $heading = C4::Heading->new_from_field($field); + $search_query = $heading->_search( 'match-heading' ); + $terms = $search_query->{query}->{bool}->{must}; + is_deeply( $terms->[0], { term => { 'match-heading.ci_raw' => 'Yankovic, Al 1959' } }, "Search formed as expected for a non-subject field with double punctuation, hyphen+comma"); $field = MARC::Field->new( '100', ' ', '', a => 'Tolkien, J.R.R.,', e => '[author]' ); $heading = C4::Heading->new_from_field($field); -- 2.34.1