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