From 0da44dd056dd94cf7cb0ea8ac4c4968337f8c8ab Mon Sep 17 00:00:00 2001 From: root Date: Mon, 10 Jun 2019 12:31:44 +0000 Subject: [PATCH] Bug 23089: Unit test to highlight sorting issue --- .../Koha/SearchEngine/Elasticsearch/QueryBuilder.t | 24 +++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/t/db_dependent/Koha/SearchEngine/Elasticsearch/QueryBuilder.t b/t/db_dependent/Koha/SearchEngine/Elasticsearch/QueryBuilder.t index df2f323383..910c63a3c2 100644 --- a/t/db_dependent/Koha/SearchEngine/Elasticsearch/QueryBuilder.t +++ b/t/db_dependent/Koha/SearchEngine/Elasticsearch/QueryBuilder.t @@ -169,7 +169,7 @@ subtest 'build_authorities_query_compat() tests' => sub { }; subtest 'build_query tests' => sub { - plan tests => 33; + plan tests => 34; my $qb; @@ -196,6 +196,28 @@ subtest 'build_query tests' => sub { "sort parameter properly formed" ); + # FIXME + # All of our sort fields currently use 'phrase' + # Integer fields shoud probably be structured differently + # But for now we should make sure they work + my @int_sort_by = 'popularity_asc'; + my @int_sort_params = $qb->_convert_sort_fields(@int_sort_by); + my %int_options; + $int_options{sort} = \@int_sort_params; + my $int_query = $qb->build_query('test', %int_options); + + is_deeply( + $int_query->{sort}, + [ + { + 'issues__sort.phrase' => { + 'order' => 'asc' + } + } + ], + "sort parameter properly formed" + ); + t::lib::Mocks::mock_preference('DisplayLibraryFacets','both'); $query = $qb->build_query(); ok( defined $query->{aggregations}{homebranch}, -- 2.11.0