From fc1854f4a3ca66abd52d845f431710717776064a Mon Sep 17 00:00:00 2001 From: gina-yamada Date: Mon, 12 Aug 2024 09:44:21 -0600 Subject: [PATCH 1/7] New config var for EIPP exp date --- lib/identity_config.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/identity_config.rb b/lib/identity_config.rb index 8a22287bfba..593f536d53d 100644 --- a/lib/identity_config.rb +++ b/lib/identity_config.rb @@ -163,6 +163,7 @@ def self.store config.add(:idv_sp_required, type: :boolean) config.add(:in_person_completion_survey_url, type: :string) config.add(:in_person_doc_auth_button_enabled, type: :boolean) + config.add(:in_person_eipp_enrollment_validity_in_days, type: :integer) config.add(:in_person_email_reminder_early_benchmark_in_days, type: :integer) config.add(:in_person_email_reminder_final_benchmark_in_days, type: :integer) config.add(:in_person_email_reminder_late_benchmark_in_days, type: :integer) From 51578698340349c95f7289432405755f55228ee3 Mon Sep 17 00:00:00 2001 From: gina-yamada Date: Mon, 12 Aug 2024 09:44:49 -0600 Subject: [PATCH 2/7] Added config var for eipp exp date --- config/application.yml.default | 1 + 1 file changed, 1 insertion(+) diff --git a/config/application.yml.default b/config/application.yml.default index 19d72a96212..bba359c1ac8 100644 --- a/config/application.yml.default +++ b/config/application.yml.default @@ -126,6 +126,7 @@ idv_send_link_max_attempts: 5 idv_sp_required: false in_person_completion_survey_url: 'https://login.gov' in_person_doc_auth_button_enabled: true +in_person_eipp_enrollment_validity_in_days: 7 in_person_email_reminder_early_benchmark_in_days: 11 in_person_email_reminder_final_benchmark_in_days: 1 in_person_email_reminder_late_benchmark_in_days: 4 From b9a5fe90c2bedf4f48a61bcc8a44ff2fc9b7430d Mon Sep 17 00:00:00 2001 From: gina-yamada Date: Mon, 12 Aug 2024 09:45:14 -0600 Subject: [PATCH 3/7] Display 7 day exp date if EIPP for enrollments --- app/models/in_person_enrollment.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/models/in_person_enrollment.rb b/app/models/in_person_enrollment.rb index e15ecd41222..bb7e198315a 100644 --- a/app/models/in_person_enrollment.rb +++ b/app/models/in_person_enrollment.rb @@ -134,7 +134,7 @@ def minutes_since_last_status_update def due_date start_date = enrollment_established_at.presence || created_at - start_date + IdentityConfig.store.in_person_enrollment_validity_in_days.days + start_date + days_to_expire end def days_to_due_date @@ -157,6 +157,10 @@ def enhanced_ipp? private + def days_to_expire + enhanced_ipp? ? IdentityConfig.store.in_person_eipp_enrollment_validity_in_days.days : IdentityConfig.store.in_person_enrollment_validity_in_days.days + end + def on_notification_sent_at_updated change_will_be_saved = notification_sent_at_change_to_be_saved&.last.present? if change_will_be_saved && notification_phone_configuration.present? From 1fbb1eb819cafb67f76f7d0eb35ea7b1c1e0c28a Mon Sep 17 00:00:00 2001 From: gina-yamada Date: Mon, 12 Aug 2024 10:15:29 -0600 Subject: [PATCH 4/7] Use if/else rather than terinary --- app/models/in_person_enrollment.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/models/in_person_enrollment.rb b/app/models/in_person_enrollment.rb index bb7e198315a..2dd814fac4d 100644 --- a/app/models/in_person_enrollment.rb +++ b/app/models/in_person_enrollment.rb @@ -158,7 +158,11 @@ def enhanced_ipp? private def days_to_expire - enhanced_ipp? ? IdentityConfig.store.in_person_eipp_enrollment_validity_in_days.days : IdentityConfig.store.in_person_enrollment_validity_in_days.days + if enhanced_ipp? + IdentityConfig.store.in_person_eipp_enrollment_validity_in_days.days + else + IdentityConfig.store.in_person_enrollment_validity_in_days.days + end end def on_notification_sent_at_updated From 8147140efa60b2ad1d11448cd00a6b6836f18753 Mon Sep 17 00:00:00 2001 From: gina-yamada Date: Mon, 12 Aug 2024 10:15:48 -0600 Subject: [PATCH 5/7] Added eipp spec for date_date days --- spec/models/in_person_enrollment_spec.rb | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/spec/models/in_person_enrollment_spec.rb b/spec/models/in_person_enrollment_spec.rb index e819b03d34d..e826ab238ba 100644 --- a/spec/models/in_person_enrollment_spec.rb +++ b/spec/models/in_person_enrollment_spec.rb @@ -457,6 +457,26 @@ end end end + + context 'eipp enrollment' do + let(:eipp_validity_in_days) { 7 } + before do + allow(IdentityConfig.store). + to( + receive(:in_person_eipp_enrollment_validity_in_days). + and_return(eipp_validity_in_days), + ) + end + it 'days_to_due_date returns the number of days left until the due date' do + freeze_time do + enrollment = create( + :in_person_enrollment, :enhanced_ipp, + enrollment_established_at: (eipp_validity_in_days - 2).days.ago, + ) + expect(enrollment.days_to_due_date).to eq(2) + end + end + end end describe 'eligible_for_notification?' do From b74a01231a9bf9c73c1542c88f14c2dac2616172 Mon Sep 17 00:00:00 2001 From: gina-yamada Date: Mon, 12 Aug 2024 10:18:26 -0600 Subject: [PATCH 6/7] Fix linter error --- spec/models/in_person_enrollment_spec.rb | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/spec/models/in_person_enrollment_spec.rb b/spec/models/in_person_enrollment_spec.rb index e826ab238ba..751be21ee86 100644 --- a/spec/models/in_person_enrollment_spec.rb +++ b/spec/models/in_person_enrollment_spec.rb @@ -468,13 +468,13 @@ ) end it 'days_to_due_date returns the number of days left until the due date' do - freeze_time do - enrollment = create( - :in_person_enrollment, :enhanced_ipp, - enrollment_established_at: (eipp_validity_in_days - 2).days.ago, - ) - expect(enrollment.days_to_due_date).to eq(2) - end + freeze_time do + enrollment = create( + :in_person_enrollment, :enhanced_ipp, + enrollment_established_at: (eipp_validity_in_days - 2).days.ago + ) + expect(enrollment.days_to_due_date).to eq(2) + end end end end From 2e68ae5707655da132856422ba61422f7eaf6f12 Mon Sep 17 00:00:00 2001 From: gina-yamada Date: Mon, 12 Aug 2024 10:20:39 -0600 Subject: [PATCH 7/7] changelog: User-Facing Improvements, Enhanced In-person proofing, Added EIPP Expiration Date for Enrollments