Skip to content

Commit 35c51ea

Browse files
committed
Only enqueue for syncing kept vaccination records
Jira-Issue: MAV-1012
1 parent 05cc1a2 commit 35c51ea

2 files changed

Lines changed: 14 additions & 1 deletion

File tree

app/lib/enqueue_sync_vaccination_record_to_nhs.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,12 @@ def self.call(vaccination_record)
1111
vaccination_record
1212
.recorded_in_service
1313
.administered
14+
.kept
1415
.where(programmes: { type: PROGRAMME_TYPES })
1516
.includes(:programme)
1617
elsif vaccination_record.programme.type.in?(PROGRAMME_TYPES) &&
1718
vaccination_record.administered? &&
18-
vaccination_record.recorded_in_service?
19+
vaccination_record.recorded_in_service? && vaccination_record.kept?
1920
Array(vaccination_record)
2021
else
2122
return

spec/lib/enqueue_sync_vaccination_record_to_nhs_spec.rb

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,16 @@
3131
end
3232
end
3333

34+
context "with a discarded vaccination record" do
35+
before { vaccination_record.discard! }
36+
37+
it "does not enqueue the job" do
38+
expect {
39+
described_class.call(vaccination_record)
40+
}.not_to have_enqueued_job(SyncVaccinationRecordToNHSJob)
41+
end
42+
end
43+
3444
VaccinationRecord.defined_enums["outcome"].each_key do |outcome|
3545
next if outcome == "administered"
3646

@@ -79,6 +89,8 @@
7989
next if outcome == "administered"
8090
create(:vaccination_record, outcome:, session:, programme:)
8191
end
92+
93+
create(:vaccination_record, :discarded, outcome:, session:, programme:)
8294
end
8395

8496
let(:flu_programme) { Programme.flu.first || create(:programme, :flu) }

0 commit comments

Comments
 (0)