Skip to content

Commit 390a0b4

Browse files
committed
Move confirmation_email_id from request to job log attribute
We no longer send the email at request time, this attribute is only available in the job context.
1 parent e47754c commit 390a0b4

File tree

4 files changed

+4
-9
lines changed

4 files changed

+4
-9
lines changed

app/jobs/send_confirmation_email_job.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ class SendConfirmationEmailJob < ApplicationJob
33
MailerOptions = Data.define(:title, :is_preview, :timestamp, :submission_reference, :payment_url)
44

55
def perform(submission:, notify_response_id:, confirmation_email_address:)
6-
set_submission_logging_attributes(submission)
6+
set_submission_logging_attributes(submission:)
77

88
I18n.with_locale(submission.submission_locale || I18n.default_locale) do
99
form = submission.form
@@ -16,6 +16,7 @@ def perform(submission:, notify_response_id:, confirmation_email_address:)
1616
)
1717

1818
mail.deliver_now
19+
CurrentJobLoggingAttributes.confirmation_email_id = mail.govuk_notify_response.id
1920
end
2021
rescue StandardError
2122
CloudWatchService.record_job_failure_metric(self.class.name)

app/models/current_job_logging_attributes.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ class CurrentJobLoggingAttributes < ActiveSupport::CurrentAttributes
77
:preview,
88
:delivery_id,
99
:delivery_reference,
10+
:confirmation_email_id,
1011
:sqs_message_id,
1112
:sns_message_timestamp
1213

@@ -20,6 +21,7 @@ def as_hash
2021
preview: preview.to_s,
2122
delivery_id:,
2223
delivery_reference:,
24+
confirmation_email_id:,
2325
sqs_message_id:,
2426
sns_message_timestamp:,
2527
}.compact_blank

app/models/current_request_logging_attributes.rb

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ class CurrentRequestLoggingAttributes < ActiveSupport::CurrentAttributes
1212
:question_number,
1313
:submission_reference,
1414
:confirmation_email_reference,
15-
:confirmation_email_id,
1615
:rescued_exception,
1716
:rescued_exception_trace,
1817
:validation_errors,
@@ -33,7 +32,6 @@ def as_hash
3332
question_number:,
3433
submission_reference:,
3534
confirmation_email_reference:,
36-
confirmation_email_id:,
3735
rescued_exception:,
3836
rescued_exception_trace:,
3937
validation_errors:,

spec/models/current_request_logging_attributes_spec.rb

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
current.question_number = 3
2424
current.submission_reference = "a-submission-ref"
2525
current.confirmation_email_reference = "a-confirmation-email-ref"
26-
current.confirmation_email_id = "a-confirmation-email-id"
2726
current.rescued_exception = "StandardError"
2827
current.rescued_exception_trace = "a trace"
2928
current.validation_errors = ["text: blank"]
@@ -43,7 +42,6 @@
4342
question_number: 3,
4443
submission_reference: "a-submission-ref",
4544
confirmation_email_reference: "a-confirmation-email-ref",
46-
confirmation_email_id: "a-confirmation-email-id",
4745
rescued_exception: "StandardError",
4846
rescued_exception_trace: "a trace",
4947
validation_errors: ["text: blank"],
@@ -55,10 +53,6 @@
5553
expect(current.as_hash.key?(:confirmation_email_reference)).to be false
5654
end
5755

58-
it "does not include nil confirmation_email_id" do
59-
expect(current.as_hash.key?(:confirmation_email_id)).to be false
60-
end
61-
6256
it "does not include the validation errors array if empty" do
6357
current.validation_errors = []
6458
expect(current.as_hash.keys).not_to include :validation_errors

0 commit comments

Comments
 (0)