|
Lines 22-33
use Test::Exception;
Link Here
|
| 22 |
use Test::Warn; |
22 |
use Test::Warn; |
| 23 |
use t::lib::Mocks; |
23 |
use t::lib::Mocks; |
| 24 |
use t::lib::TestBuilder; |
24 |
use t::lib::TestBuilder; |
| 25 |
use Test::More tests => 7; |
25 |
use Test::More tests => 8; |
| 26 |
|
26 |
|
| 27 |
use List::Util qw( all ); |
27 |
use List::Util qw( all ); |
| 28 |
|
28 |
|
| 29 |
use Koha::Database; |
29 |
use Koha::Database; |
| 30 |
use Koha::SearchEngine::Elasticsearch::QueryBuilder; |
30 |
use Koha::SearchEngine::Elasticsearch::QueryBuilder; |
|
|
31 |
use Koha::SearchFilters; |
| 31 |
|
32 |
|
| 32 |
my $schema = Koha::Database->new->schema; |
33 |
my $schema = Koha::Database->new->schema; |
| 33 |
$schema->storage->txn_begin; |
34 |
$schema->storage->txn_begin; |
|
Lines 783-788
subtest 'build_query_compat() SearchLimitLibrary tests' => sub {
Link Here
|
| 783 |
|
784 |
|
| 784 |
}; |
785 |
}; |
| 785 |
|
786 |
|
|
|
787 |
subtest "Handle search filters" => sub { |
| 788 |
plan tests => 4; |
| 789 |
|
| 790 |
my $qb; |
| 791 |
|
| 792 |
ok( |
| 793 |
$qb = Koha::SearchEngine::Elasticsearch::QueryBuilder->new({ 'index' => 'biblios' }), |
| 794 |
'Creating new query builder object for biblios' |
| 795 |
); |
| 796 |
|
| 797 |
my $filter = Koha::SearchFilter->new({ |
| 798 |
name => "test", |
| 799 |
query => q|{"operands":["cat","bat","rat"],"indexes":["kw","ti","au"],"operators":["AND","OR"]}|, |
| 800 |
limits => q|{"limits":["mc-itype,phr:BK","available"]}|, |
| 801 |
})->store; |
| 802 |
my $filter_id = $filter->id; |
| 803 |
|
| 804 |
my ( undef, undef, undef, undef, undef, $limit, $limit_cgi, $limit_desc ) = $qb->build_query_compat( undef, undef, undef, ["search_filter:$filter_id"] ); |
| 805 |
|
| 806 |
is( $limit,q{(itype:("BK")) AND (onloan:false) AND (((cat) AND title:(bat) OR author:(rat)))},"Limit correctly formed"); |
| 807 |
is( $limit_cgi,"&limit=search_filter%3A$filter_id","CGI limit is not expanded"); |
| 808 |
is( $limit_desc,q{(itype:("BK")) AND (onloan:false) AND (((cat) AND title:(bat) OR author:(rat)))},"Limit description is correctly expanded"); |
| 809 |
|
| 810 |
}; |
| 811 |
|
| 786 |
subtest "_convert_sort_fields() tests" => sub { |
812 |
subtest "_convert_sort_fields() tests" => sub { |
| 787 |
plan tests => 3; |
813 |
plan tests => 3; |
| 788 |
|
814 |
|