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 772-777
subtest 'build_query_compat() SearchLimitLibrary tests' => sub {
Link Here
|
772 |
|
773 |
|
773 |
}; |
774 |
}; |
774 |
|
775 |
|
|
|
776 |
subtest "Handle search filters" => sub { |
777 |
plan tests => 4; |
778 |
|
779 |
my $qb; |
780 |
|
781 |
ok( |
782 |
$qb = Koha::SearchEngine::Elasticsearch::QueryBuilder->new({ 'index' => 'biblios' }), |
783 |
'Creating new query builder object for biblios' |
784 |
); |
785 |
|
786 |
my $filter = Koha::SearchFilter->new({ |
787 |
name => "test", |
788 |
query => q|{"operands":["cat","bat","rat"],"indexes":["kw","ti","au"],"operators":["AND","OR"]}|, |
789 |
limits => q|{"limits":["mc-itype,phr:BK","available"]}|, |
790 |
})->store; |
791 |
my $filter_id = $filter->id; |
792 |
|
793 |
my ( undef, undef, undef, undef, undef, $limit, $limit_cgi, $limit_desc ) = $qb->build_query_compat( undef, undef, undef, ["search_filter:$filter_id"] ); |
794 |
|
795 |
is( $limit,q{(itype:("BK")) AND (onloan:false) AND (((cat) AND title:(bat) OR author:(rat)))},"Limit correctly formed"); |
796 |
is( $limit_cgi,"&limit=search_filter%3A$filter_id","CGI limit is not expanded"); |
797 |
is( $limit_desc,q{(itype:("BK")) AND (onloan:false) AND (((cat) AND title:(bat) OR author:(rat)))},"Limit description is correctly expanded"); |
798 |
|
799 |
}; |
800 |
|
775 |
subtest "_convert_sort_fields() tests" => sub { |
801 |
subtest "_convert_sort_fields() tests" => sub { |
776 |
plan tests => 3; |
802 |
plan tests => 3; |
777 |
|
803 |
|