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 |
|