Skip to content

Commit e3e6064

Browse files
Merge pull request #230 from sul-dlss/port_error_log
Add indicators of success / error to bulk actions logs.
2 parents 84a8d18 + b7cea37 commit e3e6064

14 files changed

Lines changed: 30 additions & 28 deletions

app/components/search/item_result_component.html.erb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@
55
<% component.with_caption do %>
66
<%= render Search::ResultHeadingComponent.new(index:) do |component| %>
77
<%= component.with_link do %>
8-
<%= helpers.link_to(title, object_path(druid:), data: { turbo_frame: '_top' }) %>
8+
<%# Pre-fetch here breaks tests because can be triggered unintentionally. %>
9+
<%= helpers.link_to(title, object_path(druid:), data: { turbo_frame: '_top', turbo_prefetch: !Rails.env.test? }) %>
910
<% end %>
1011
<% end %>
1112
<% end %>

app/components/search/item_result_component.rb

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@ def content_type_values
2424
end
2525

2626
def admin_policy_values
27+
# Pre-fetch here breaks tests because can be triggered unintentionally.
2728
[helpers.link_to(result.apo_title, object_path(druid: result.apo_druid),
28-
data: { turbo_frame: '_top' })]
29+
data: { turbo_frame: '_top', turbo_prefetch: !Rails.env.test? })]
2930
end
3031

3132
def collections_values
@@ -65,7 +66,7 @@ def access_rights_values
6566
def collection_links
6667
result.collection_druids.map.with_index do |collection_druid, index|
6768
helpers.link_to(result.collection_titles[index], object_path(druid: collection_druid),
68-
data: { turbo_frame: '_top' })
69+
data: { turbo_frame: '_top', turbo_prefetch: false })
6970
end
7071
end
7172

app/jobs/bulk_actions/base_csv_job.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ def perform_bulk_action
1919
druid = row[DRUID_COLUMN]
2020
perform_item_class.new(druid:, index:, job: self, row:).perform
2121
rescue StandardError => e
22-
failure!(druid:, message: "Failed #{e.class} #{e.message}", index:)
22+
failure!(druid:, message: "Error: #{e.class} #{e.message}", index:)
2323
end
2424
end
2525

app/jobs/bulk_actions/base_csv_job_item.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@ def initialize(row:, **args)
1313
attr_reader :row
1414

1515
def success!(message:)
16-
job.success!(druid:, message:, index:)
16+
job.success!(druid:, message: "Success: #{message}", index:)
1717
end
1818

1919
def failure!(message:)
20-
job.failure!(druid:, message:, index:)
20+
job.failure!(druid:, message: "Error: #{message}", index:)
2121
end
2222
end
2323
end

app/jobs/bulk_actions/base_job_item.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,12 @@ def perform
2626

2727
# Indicate that the action was successful.
2828
def success!(message: nil)
29-
job.success!(druid:, message:)
29+
job.success!(druid:, message: "Success: #{message}")
3030
end
3131

3232
# Indicate that the action failed.
3333
def failure!(message:)
34-
job.failure!(druid:, message:)
34+
job.failure!(druid:, message: "Error: #{message}")
3535
end
3636

3737
def cocina_object

app/jobs/bulk_actions/druids_job.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ def perform_bulk_action
2323
druids.each_with_index do |druid, index|
2424
perform_item_class.new(druid:, index:, job: self).perform
2525
rescue StandardError => e
26-
failure!(druid:, message: "Failed #{e.class} #{e.message}")
26+
failure!(druid:, message: "Error: #{e.class} #{e.message}")
2727
Rails.logger.error(e.full_message)
2828
Honeybadger.notify(e)
2929
end

app/jobs/bulk_actions/import_descriptive_metadata_job.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ def perform # rubocop:disable Metrics/AbcSize
2121
Dor::Services::Client.objects.indexable(druid: cocina_object.externalIdentifier,
2222
cocina: cocina_object.new(description:))
2323

24-
return failure!(message: 'Description unchanged') if cocina_object.description == description
24+
return success!(message: 'Description unchanged') if cocina_object.description == description
2525

2626
open_new_version_if_needed!(description: description_msg)
2727

spec/jobs/bulk_actions/base_csv_job_item_spec.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
it 'calls job.success!' do
2626
bulk_action_item.success!(message: 'Testing successful')
27-
expect(job).to have_received(:success!).with(druid:, message: 'Testing successful', index: 2)
27+
expect(job).to have_received(:success!).with(druid:, message: 'Success: Testing successful', index: 2)
2828
end
2929
end
3030

@@ -35,7 +35,7 @@
3535

3636
it 'calls job.failure!' do
3737
bulk_action_item.failure!(message: 'Testing failed')
38-
expect(job).to have_received(:failure!).with(druid:, message: 'Testing failed', index: 2)
38+
expect(job).to have_received(:failure!).with(druid:, message: 'Error: Testing failed', index: 2)
3939
end
4040
end
4141
end

spec/jobs/bulk_actions/base_csv_job_spec.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ def perform
5555

5656
expect(log).to have_received(:puts).with(/Starting TestBulkActionCsvJob for BulkAction #{bulk_action.id}/)
5757
expect(log).to have_received(:puts).with(/Finished TestBulkActionCsvJob for BulkAction #{bulk_action.id}/)
58-
expect(log).to have_received(:puts).with(/line 2 - Testing successful for #{druids.first}/o)
59-
expect(log).to have_received(:puts).with(/line 3 - Testing failed for #{druids.second}/o)
58+
expect(log).to have_received(:puts).with(/line 2 - Success: Testing successful for #{druids.first}/o)
59+
expect(log).to have_received(:puts).with(/line 3 - Error: Testing failed for #{druids.second}/o)
6060

6161
expect(bulk_action.reload.druid_count_total).to eq(2)
6262
expect(bulk_action.druid_count_success).to eq(1)

spec/jobs/bulk_actions/base_job_item_spec.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
it 'calls job.success!' do
2121
bulk_action_item.success!(message: 'Testing successful')
22-
expect(job).to have_received(:success!).with(druid:, message: 'Testing successful')
22+
expect(job).to have_received(:success!).with(druid:, message: 'Success: Testing successful')
2323
end
2424
end
2525

@@ -30,7 +30,7 @@
3030

3131
it 'calls job.failure!' do
3232
bulk_action_item.failure!(message: 'Testing failed')
33-
expect(job).to have_received(:failure!).with(druid:, message: 'Testing failed')
33+
expect(job).to have_received(:failure!).with(druid:, message: 'Error: Testing failed')
3434
end
3535
end
3636

@@ -224,7 +224,7 @@
224224

225225
it 'returns false' do
226226
expect(bulk_action_item.check_update_ability?).to be false
227-
expect(job).to have_received(:failure!).with(druid:, message: 'Not authorized to update')
227+
expect(job).to have_received(:failure!).with(druid:, message: 'Error: Not authorized to update')
228228
end
229229
end
230230
end
@@ -256,7 +256,7 @@
256256

257257
it 'returns false' do
258258
expect(bulk_action_item.check_read_ability?).to be false
259-
expect(job).to have_received(:failure!).with(druid:, message: 'Not authorized to read')
259+
expect(job).to have_received(:failure!).with(druid:, message: 'Error: Not authorized to read')
260260
end
261261
end
262262
end

0 commit comments

Comments
 (0)