Bugzilla – Attachment 135231 Details for
Bug 30817
Make build_authorities_query takes QueryAutoTruncate system preference into account
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 30817: make build_authorities_query takes QueryAutoTruncate system preference into account
Bug-30817-make-buildauthoritiesquery-takes-QueryAu.patch (text/plain), 2.99 KB, created by
Alex Arnaud
on 2022-05-20 10:00:37 UTC
(
hide
)
Description:
Bug 30817: make build_authorities_query takes QueryAutoTruncate system preference into account
Filename:
MIME Type:
Creator:
Alex Arnaud
Created:
2022-05-20 10:00:37 UTC
Size:
2.99 KB
patch
obsolete
>From 49eca97f3e5062b00fffac1142919655068e746f Mon Sep 17 00:00:00 2001 >From: Alex Arnaud <alex.arnaud@biblibre.com> >Date: Thu, 19 May 2022 15:09:58 +0000 >Subject: [PATCH] Bug 30817: make build_authorities_query takes > QueryAutoTruncate system preference into account > >--- > .../Elasticsearch/QueryBuilder.pm | 6 ++--- > .../SearchEngine/Elasticsearch/QueryBuilder.t | 25 ++++++++++++++++++- > 2 files changed, 27 insertions(+), 4 deletions(-) > >diff --git a/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm b/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm >index dba475eb3c..e1933a5749 100644 >--- a/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm >+++ b/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm >@@ -441,12 +441,12 @@ sub build_authorities_query { > # Given that field data is "The quick brown fox" > # a search containing any of the words will match, regardless > # of order. >+ my $truncate = C4::Context->preference("QueryAutoTruncate") || 0; > > my @tokens = $self->_split_query( $val ); > foreach my $token ( @tokens ) { >- $token = $self->_truncate_terms( >- $self->clean_search_term( $token ) >- ); >+ $token = $self->clean_search_term( $token ); >+ $token = $self->_truncate_terms( $token ) if $truncate; > } > my $query = $self->_join_queries( @tokens ); > my $query_string = { >diff --git a/t/db_dependent/Koha/SearchEngine/Elasticsearch/QueryBuilder.t b/t/db_dependent/Koha/SearchEngine/Elasticsearch/QueryBuilder.t >index b4e2de938c..e99900dc59 100755 >--- a/t/db_dependent/Koha/SearchEngine/Elasticsearch/QueryBuilder.t >+++ b/t/db_dependent/Koha/SearchEngine/Elasticsearch/QueryBuilder.t >@@ -22,7 +22,7 @@ use Test::Exception; > use Test::Warn; > use t::lib::Mocks; > use t::lib::TestBuilder; >-use Test::More tests => 7; >+use Test::More tests => 8; > > use List::Util qw( all ); > >@@ -101,10 +101,33 @@ $se->mock( 'get_elasticsearch_mappings', sub { > return $all_mappings{$self->index}; > }); > >+subtest 'build_authorities_query_compat() no query truncate tests' => sub { >+ >+ plan tests => 9; >+ >+ t::lib::Mocks::mock_preference( 'QueryAutoTruncate', '' ); >+ >+ my $qb; >+ >+ ok( >+ $qb = Koha::SearchEngine::Elasticsearch::QueryBuilder->new({ 'index' => 'authorities' }), >+ 'Creating new query builder object for authorities' >+ ); >+ >+ my $koha_to_index_name = $Koha::SearchEngine::Elasticsearch::QueryBuilder::koha_to_index_name; >+ my $search_term = 'a'; >+ foreach my $koha_name ( keys %{ $koha_to_index_name } ) { >+ my $query = $qb->build_authorities_query_compat( [ $koha_name ], undef, undef, ['contains'], [$search_term], 'AUTH_TYPE', 'asc' ); >+ is( $query->{query}->{bool}->{must}[0]->{query_string}->{query}, 'a'); >+ } >+}; >+ > subtest 'build_authorities_query_compat() tests' => sub { > > plan tests => 65; > >+ t::lib::Mocks::mock_preference( 'QueryAutoTruncate', 1 ); >+ > my $qb; > > ok( >-- >2.30.2
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 30817
: 135231