From a81b2cfe4fb1ff12ac063ba275e99d0596f457ca Mon Sep 17 00:00:00 2001 From: Paul Derscheid Date: Fri, 17 Apr 2026 16:47:18 +0200 Subject: [PATCH] Bug 16994: (QA follow-up) Align overwrite result key across module, template and tests The import result hash key was inconsistent: the module sets $result->{overwrote}, but the test checked $result->{overwrite} and the template wrapper used import_overwrite. The uninitialized key also triggered a "Use of uninitialized value" warning when no templates were overwritten. - Initialize overwrote => 0 in ImportModificationTemplates result hash - Update test to check $result->{overwrote} - Fix template success-alert wrapper to gate on import_overwrote Test plan: - prove t/db_dependent/MarcModificationTemplates.t - all 134 subtests pass Signed-off-by: Paul Derscheid Signed-off-by: Lucas Gass --- C4/MarcModificationTemplates.pm | 7 ++++--- .../prog/en/modules/tools/marc_modification_templates.tt | 2 +- t/db_dependent/MarcModificationTemplates.t | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/C4/MarcModificationTemplates.pm b/C4/MarcModificationTemplates.pm index d619a61ddf..f36a81b7fb 100644 --- a/C4/MarcModificationTemplates.pm +++ b/C4/MarcModificationTemplates.pm @@ -840,9 +840,10 @@ sub ImportModificationTemplates { my ( $json, $skip_existing ) = @_; my $result = { - success => 0, - skipped => 0, - errors => [], + success => 0, + skipped => 0, + overwrote => 0, + errors => [], }; my $data; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/marc_modification_templates.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/marc_modification_templates.tt index d193d7ed28..515d6162a6 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/marc_modification_templates.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/marc_modification_templates.tt @@ -420,7 +420,7 @@ [% END %] [% END %] - [% IF import_success || import_skipped || import_overwrite %] + [% IF import_success || import_skipped || import_overwrote %]
[% IF import_success %]

Successfully imported [% import_success | html %] template(s).

diff --git a/t/db_dependent/MarcModificationTemplates.t b/t/db_dependent/MarcModificationTemplates.t index fb79e92454..ea69f1d282 100755 --- a/t/db_dependent/MarcModificationTemplates.t +++ b/t/db_dependent/MarcModificationTemplates.t @@ -1236,7 +1236,7 @@ subtest 'Import with skip_existing=0 overwrites existing templates' => sub { my $result = ImportModificationTemplates( $json, 0 ); ok( $result->{success} == 1, "Template imported successfully with skip_existing=0" ); ok( $result->{skipped} == 0, "No templates skipped" ); - ok( $result->{overwrite} == 1, "One template overwritten" ); + ok( $result->{overwrote} == 1, "One template overwritten" ); ok( scalar( @{ $result->{errors} } ) == 0, "No import errors" ); # Verify the template was overwritten (should have only 1 action now)