Bugzilla – Attachment 141093 Details for
Bug 31644
MARCModification template fails to copy to/from subfield 0
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 31644: Add copy test and clarify some functions
Bug-31644-Add-copy-test-and-clarify-some-functions.patch (text/plain), 4.70 KB, created by
Nick Clemens (kidclamp)
on 2022-09-29 16:20:23 UTC
(
hide
)
Description:
Bug 31644: Add copy test and clarify some functions
Filename:
MIME Type:
Creator:
Nick Clemens (kidclamp)
Created:
2022-09-29 16:20:23 UTC
Size:
4.70 KB
patch
obsolete
>From 70c34376fd9085285dc7ca301aa495096fcae1ef Mon Sep 17 00:00:00 2001 >From: Nick Clemens <nick@bywatersolutions.com> >Date: Thu, 29 Sep 2022 16:13:10 +0000 >Subject: [PATCH] Bug 31644: Add copy test and clarify some functions > >This patch adds a tst for copy without subfields. I also clarify what eachstep does >so the next user/coder understands current behaviour > >Update existing or add new: In the case where the field/subfield exists >we update, if we have two fields - one with the subfield, and one without, we >add the subfield to the one without > >Copy field: > - If given a subfield - we will add to existing fields in the record > - If not given a subfield - we create an entirely new field > >The logic of all of this is tricky, makes sense in a certain light, any complaints >are for a new bug :-) >--- > t/db_dependent/MarcModificationTemplates.t | 38 ++++++++++++++++++++-- > 1 file changed, 36 insertions(+), 2 deletions(-) > >diff --git a/t/db_dependent/MarcModificationTemplates.t b/t/db_dependent/MarcModificationTemplates.t >index 14a1757c8a..38549c614d 100755 >--- a/t/db_dependent/MarcModificationTemplates.t >+++ b/t/db_dependent/MarcModificationTemplates.t >@@ -1,6 +1,6 @@ > use Modern::Perl; > >-use Test::More tests => 127; >+use Test::More tests => 129; > > use Koha::Database; > use Koha::SimpleMARC; >@@ -744,6 +744,12 @@ sub expected_record_0 { > MARC::Field->new( > 690, ' ', ' ', > 0 => 'Zeroth', >+ a => 'Appolo', >+ ), >+ MARC::Field->new( >+ 690, ' ', '0', >+ 0 => 'Zeroth', >+ a => 'Appolo', > ), > ); > $record->append_fields(@fields); >@@ -766,6 +772,7 @@ is( AddModificationTemplateAction( > ), 1, 'Action 1: Delete subfield 100$0'); > > # Add new subfield 100$0 with value "Test" >+# This adds a new 100 field to the record > is( AddModificationTemplateAction( > $template_id, 'add_field', 0, > '100', '0', 'Test', '', '', >@@ -775,6 +782,7 @@ is( AddModificationTemplateAction( > ), 1, 'Action 2: Add new subfield 100$0'); > > # Update existing or add new subfield 100$0 with value "TestUpdated" >+# This updates the new 100 create above, and adds a new 100$0 to the original 100 field > is( AddModificationTemplateAction( > $template_id, 'update_field', 0, > '100', '0', 'TestUpdated', '', '', >@@ -784,6 +792,8 @@ is( AddModificationTemplateAction( > ), 1, 'Action 3: Update existing or add new subfield 100$0 with value "TestUpdated"'); > > # Move subfield 100$0 to 600$0 >+# This removes the newly created 100, and removes the 100$0 from the original 100 field >+# Two 600 fields with a single 0 subfield are created > is( AddModificationTemplateAction( > $template_id, 'move_field', 0, > '100', '0', '', '600', '0', >@@ -793,6 +803,7 @@ is( AddModificationTemplateAction( > ), 1, 'Action 4: Move subfield 100$0 to 600$0'); > > # Copy subfield 600$0 to 100$0 >+# Copy subfield adds to existing fields if found, so we get two 100$0 on the original field > is( AddModificationTemplateAction( > $template_id, 'copy_field', 0, > '600', '0', '', '100', '0', >@@ -802,6 +813,7 @@ is( AddModificationTemplateAction( > ), 1, 'Action 5: Copy subfield 600$0 to 100$0'); > > # Copy and replace subfield 245$0 to 700$0 >+# Copy and replace in this case makes a new 700$0 as it wasn't there > is( AddModificationTemplateAction( > $template_id, 'copy_and_replace_field', 0, > '245', '0', '', '700', '0', >@@ -811,6 +823,7 @@ is( AddModificationTemplateAction( > ), 1, 'Action 6: Copy and replace subfield 245$0 to 700$0'); > > # Copy subfield 590$0 to 690$0 >+# Copies the single subfield from 590 to a new 690 > is( AddModificationTemplateAction( > $template_id, 'copy_field', 0, > '590', '0', '', '690', '0', >@@ -819,8 +832,29 @@ is( AddModificationTemplateAction( > 'Action 7: Copy subfield 590$0 to 690$0' > ), 1, 'Action 7: Copy subfield 590$0 to 690$0'); > >+# Copy subfield 590$a to 690$a >+# Copy subfield adds to existing 690 a new subfield a >+is( AddModificationTemplateAction( >+ $template_id, 'copy_field', 0, >+ '590', 'a', '', '690', 'a', >+ '', '', '', >+ '', '', '', '', '', '', >+ 'Action 8: Copy subfield 690$a to 690$a' >+), 1, 'Action 8: Copy subfield 690$a to 690$a'); >+ >+ >+# Copy field 590 to 690 >+# Copy field copies existing to a new 690, does not add to existing >+is( AddModificationTemplateAction( >+ $template_id, 'copy_field', 0, >+ '590', '', '', '690', '', >+ '', '', '', >+ '', '', '', '', '', '', >+ 'Action 9: Copy subfield 590 to 690' >+), 1, 'Action 9: Copy subfield 590 to 690'); >+ > my @actions_0 = GetModificationTemplateActions( $template_id ); >-is( @actions_0, 7, "7 actions are inserted"); >+is( @actions_0, 9, "9 actions are inserted"); > > ModifyRecordWithTemplate( $template_id, $record ); > my $expected_record_0 = expected_record_0(); >-- >2.30.2
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 31644
:
141066
|
141091
|
141092
|
141093
|
141936
|
141937
|
141938
|
142298
|
142299
|
142300
|
142301