@@ -, +, @@ --- t/Search.t | 51 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 46 insertions(+), 5 deletions(-) --- a/t/Search.t +++ a/t/Search.t @@ -189,18 +189,59 @@ subtest "searchResults PassItemMarcToXSLT test" => sub { my $builder = t::lib::TestBuilder->new; - my $item = $builder->build_sample_item(); - my $record = $item->biblio->metadata->record({ embed_items => 1 }); - + my $xml_record = q{ + + + 00144 a2200073 4500 + + Some boring read + + + Some boring author + + + gOlAIZMF + + + 0 + 0 + 0 + 0 + 1117 + D6C8Pj + D6C8Pj + 2023-03-31 + 0 + g57ad1Zn3NOYZ + 2023-03-31 + 2023-03-31 + gOlAIZMF + + + 553 + 553 + + +}; t::lib::Mocks::mock_preference('PassItemMarcToXSLT','1'); - warnings_like { C4::Search::searchResults({ interface => "opac" },"test",1,1,0,0,[ $record->as_xml_record ] ,undef) } + # The routine uses a count of items in DB to determine if record should be hidden. + # Our item is not in the DB, so we avoid hiding the record which would + # mean we don't call XSLTParse4Display. + # Also ensure item is not hidden + t::lib::Mocks::mock_preference('OpacHiddenItems',''); + t::lib::Mocks::mock_preference('OpacHiddenItemsHidesRecord','0'); + + warnings_like { C4::Search::searchResults({ interface => "opac" },"test",1,1,0,0,[ $xml_record ] ,undef) } [qr/Item here/], "Item field returned from default XSLT if pref set"; t::lib::Mocks::mock_preference('PassItemMarcToXSLT','0'); - warnings_like { C4::Search::searchResults({ interface => "opac" },"test",1,1,0,0,[ $record->as_xml_record ] ,undef) } + warnings_like { C4::Search::searchResults({ interface => "opac" },"test",1,1,0,0,[ $xml_record ] ,undef) } [qr/No item/], "Item field returned from default XSLT if pref set"; --