| 
      
            Lines 410-426
          subtest 'Desks' => sub {
      
      
        Link Here
      
     | 
  
        
          | 410 | 
          };  | 
          410 | 
          };  | 
        
        
          | 411 | 
           | 
          411 | 
           | 
        
        
          | 412 | 
          subtest 'get_items_that_can_fill' => sub { | 
          412 | 
          subtest 'get_items_that_can_fill' => sub { | 
        
          
            
              | 413 | 
                  plan tests => 1;  | 
              413 | 
                  plan tests => 2;  | 
            
        
          | 414 | 
           | 
          414 | 
           | 
        
        
          | 415 | 
              my $biblio = $builder->build_sample_biblio;  | 
          415 | 
              my $biblio = $builder->build_sample_biblio;  | 
        
          
            
              | 416 | 
                  my $item_1 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber } ); | 
              416 | 
                  my $itype_1 = $builder->build_object({ class => 'Koha::ItemTypes' }); # For 1, 2, 3, 4 | 
            
            
               | 
               | 
              417 | 
                  my $itype_2 = $builder->build_object({ class => 'Koha::ItemTypes' }); | 
            
            
              | 418 | 
                  my $item_1 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, itype => $itype_1->itemtype } ); | 
            
        
          | 417 | 
                  # waiting  | 
          419 | 
                  # waiting  | 
        
          
            
              | 418 | 
                  my $item_2 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber } ); | 
              420 | 
                  my $item_2 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, itype => $itype_1->itemtype } ); | 
            
            
              | 419 | 
                  my $item_3 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber } ) | 
              421 | 
                  my $item_3 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, itype => $itype_1->itemtype } ) | 
            
        
          | 420 | 
                ;    # onloan  | 
          422 | 
                ;    # onloan  | 
        
          
            
              | 421 | 
                  my $item_4 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber } ) | 
              423 | 
                  my $item_4 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, itype => $itype_1->itemtype } ) | 
            
        
          | 422 | 
                ;    # in transfer  | 
          424 | 
                ;    # in transfer  | 
        
          
            
              | 423 | 
                  my $item_5 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber } ); | 
              425 | 
                  my $item_5 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, itype => $itype_2->itemtype } ); | 
            
        
          | 424 | 
              my $lost       = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, itemlost => 1 } ); | 
          426 | 
              my $lost       = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, itemlost => 1 } ); | 
        
        
          | 425 | 
              my $withdrawn  = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, withdrawn => 1 } ); | 
          427 | 
              my $withdrawn  = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, withdrawn => 1 } ); | 
        
        
          | 426 | 
              my $notforloan = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, notforloan => 1 } ); | 
          428 | 
              my $notforloan = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, notforloan => 1 } ); | 
        
  
    | 
      
            Lines 480-488
          subtest 'get_items_that_can_fill' => sub {
      
      
        Link Here
      
     | 
  
        
          | 480 | 
                  }  | 
          482 | 
                  }  | 
        
        
          | 481 | 
              );  | 
          483 | 
              );  | 
        
        
          | 482 | 
           | 
          484 | 
           | 
        
          
            
              | 483 | 
                  my @items = $holds->get_items_that_can_fill;  | 
              485 | 
                  my $items = $holds->get_items_that_can_fill;  | 
            
            
              | 484 | 
                  is_deeply( [ map { $_->itemnumber } @items ], | 
              486 | 
                  is_deeply( [ map { $_->itemnumber } $items->as_list ], | 
            
        
          | 485 | 
                  [ $item_2->itemnumber, $item_5->itemnumber ], 'Only item 2 and 5 are available for filling the hold' );  | 
          487 | 
                  [ $item_2->itemnumber, $item_5->itemnumber ], 'Only item 2 and 5 are available for filling the hold' );  | 
        
            
               | 
               | 
              488 | 
               | 
            
            
              | 489 | 
                  # Marking item_5 is no hold allowed  | 
            
            
              | 490 | 
                  Koha::CirculationRule->new(  | 
            
            
              | 491 | 
                      { | 
            
            
              | 492 | 
                          rule_name  => 'holdallowed',  | 
            
            
              | 493 | 
                          rule_value => 0,  | 
            
            
              | 494 | 
                          itemtype   => $item_5->itype  | 
            
            
              | 495 | 
                      }  | 
            
            
              | 496 | 
                  )->store;  | 
            
            
              | 497 | 
                  $items = $holds->get_items_that_can_fill;  | 
            
            
              | 498 | 
                  is_deeply( [ map { $_->itemnumber } $items->as_list ], | 
            
            
              | 499 | 
                      [ $item_2->itemnumber ], 'Only item 1 is available for filling the hold' );  | 
            
            
              | 500 | 
               | 
            
        
          | 486 | 
          };  | 
          501 | 
          };  | 
        
        
          | 487 | 
           | 
          502 | 
           | 
        
        
          | 488 | 
          $schema->storage->txn_rollback;  | 
          503 | 
          $schema->storage->txn_rollback;  | 
        
            
              | 489 | 
              -   | 
               | 
               |