From 59353d6922a90f28d965661d8cc8bf1b0ae96c6f Mon Sep 17 00:00:00 2001 From: Weronika Tomaszewska Date: Thu, 26 Mar 2026 16:58:57 -0400 Subject: [PATCH] FOLIOSYNC-17 clear id_1, id_2, id_3 identifiers when writing to ASpace --- .../archives_space/resource_updater.rb | 3 +++ .../archives_space/resource_updater_spec.rb | 16 ++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/lib/folio_sync/archives_space/resource_updater.rb b/lib/folio_sync/archives_space/resource_updater.rb index bfdd333..8d74e8f 100644 --- a/lib/folio_sync/archives_space/resource_updater.rb +++ b/lib/folio_sync/archives_space/resource_updater.rb @@ -57,6 +57,9 @@ def update_id_fields(record) update_resource_with_folio_data(record.repository_key, record.resource_key) do |resource_data| resource_data.merge( 'id_0' => record.folio_hrid, + 'id_1' => '', + 'id_2' => '', + 'id_3' => '', 'ead_id' => record.folio_hrid ) end diff --git a/spec/folio_sync/archives_space/resource_updater_spec.rb b/spec/folio_sync/archives_space/resource_updater_spec.rb index b142e22..769ca70 100644 --- a/spec/folio_sync/archives_space/resource_updater_spec.rb +++ b/spec/folio_sync/archives_space/resource_updater_spec.rb @@ -89,6 +89,22 @@ expect(updater).to receive(:update_resource_with_folio_data).with(1, 123) updater.update_id_fields(record) end + + it 'clears id_1, id_2, and id_3 while setting id_0 and ead_id to folio_hrid' do + updater = described_class.new('cul') + resource_data = { 'id_0' => 'old', 'id_1' => 'part1', 'id_2' => 'part2', 'id_3' => 'part3' } + + allow(client).to receive(:fetch_resource).with(1, 123).and_return(resource_data) + expect(client).to receive(:update_resource) do |_repo_id, _res_id, data| + expect(data['id_0']).to eq('hrid1') + expect(data['ead_id']).to eq('hrid1') + expect(data['id_1']).to eq('') + expect(data['id_2']).to eq('') + expect(data['id_3']).to eq('') + end + + updater.update_id_fields(record) + end end describe '#update_string_1_field' do