Bug 36473: (follow-up) Additionally warn the stringified exception

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
This commit is contained in:
Nick Clemens 2024-04-18 11:17:33 +00:00 committed by Katrin Fischer
parent 1b99de33f9
commit 903a8685c6
Signed by: kfischer
GPG key ID: 0EF6E2C03357A834
2 changed files with 20 additions and 5 deletions

View file

@ -3062,6 +3062,7 @@ sub UpdateTotalIssues {
if ($@) {
my $exception = $@;
$exception->rethrow unless ( $exception->isa('Koha::Exceptions::Metadata::Invalid') );
warn $exception;
warn "UpdateTotalIssues could not get bibliographic record for biblionumber $biblionumber";
return;
}

View file

@ -1026,18 +1026,32 @@ subtest 'UpdateTotalIssues on Invalid record' => sub {
plan tests => 2;
my $return_record = Test::MockModule->new('Koha::Biblio::Metadata');
$return_record->mock( 'record', sub { Koha::Exceptions::Metadata::Invalid->throw() } );
$return_record->mock( 'record', sub {
my $self = shift;
Koha::Exceptions::Metadata::Invalid->throw(
id => $self->id,
biblionumber => $self->biblionumber,
format => $self->format,
schema => $self->schema,
decoding_error => "Error goes here",
);
} );
my $biblio = $builder->build_sample_biblio;
my $biblionumber = $biblio->biblionumber;
my $biblio = $builder->build_sample_biblio;
my $biblionumber = $biblio->biblionumber;
my $biblio_metadata_id = $biblio->metadata->id;
my $increase = 1;
my $success;
warning_is {
warnings_like {
$success = C4::Biblio::UpdateTotalIssues( $biblio->biblionumber, $increase, '' );
}
"UpdateTotalIssues could not get bibliographic record for biblionumber $biblionumber", "Expected warning found";
[
qr/Invalid data, cannot decode metadata object/,
qr/UpdateTotalIssues could not get bibliographic record for biblionumber $biblionumber/
],
"Expected warning found";
ok( !$success, 'UpdateTotalIssues fails gracefully for invalid record' );