diff --git a/app/controllers/idv/gpo_controller.rb b/app/controllers/idv/gpo_controller.rb index 39679384683..01d07a7d06a 100644 --- a/app/controllers/idv/gpo_controller.rb +++ b/app/controllers/idv/gpo_controller.rb @@ -37,6 +37,7 @@ def gpo_mail_service def update_tracking analytics.idv_gpo_address_letter_requested(resend: resend_requested?) + irs_attempts_api_tracker.idv_letter_requested(success: true, resend: resend_requested?) create_user_event(:gpo_mail_sent, current_user) ProofingComponent.create_or_find_by(user: current_user).update(address_check: 'gpo_letter') diff --git a/app/services/irs_attempts_api/tracker_events.rb b/app/services/irs_attempts_api/tracker_events.rb index d08b336f988..cc8e585986b 100644 --- a/app/services/irs_attempts_api/tracker_events.rb +++ b/app/services/irs_attempts_api/tracker_events.rb @@ -150,6 +150,17 @@ def idv_document_upload_rate_limited ) end + # @param [Boolean] success + # @param [String] resend + # The Address validation letter has been requested by user + def idv_letter_requested(success:, resend:) + track_event( + :idv_letter_requested, + success: success, + resend: resend, + ) + end + # @param [Boolean] success # @param [String] phone_number # The phone upload link was sent during the IDV process diff --git a/spec/controllers/idv/gpo_controller_spec.rb b/spec/controllers/idv/gpo_controller_spec.rb index 8e15a7240cc..c3771ccf1f7 100644 --- a/spec/controllers/idv/gpo_controller_spec.rb +++ b/spec/controllers/idv/gpo_controller_spec.rb @@ -4,6 +4,7 @@ let(:user) { create(:user) } before { stub_analytics } + before { stub_attempts_tracker } describe 'before_actions' do it 'includes authentication before_action' do @@ -81,6 +82,13 @@ expect(response).to redirect_to idv_review_path expect(subject.idv_session.address_verification_mechanism).to eq :gpo end + + it 'logs attempts api tracking' do + expect(@irs_attempts_api_tracker).to receive(:idv_letter_requested). + with(success: true, resend: false) + + put :create + end end context 'resending a letter' do @@ -102,6 +110,13 @@ expect_resend_letter_to_send_letter_and_redirect(otp: true) end + it 'logs attempts api tracking' do + expect(@irs_attempts_api_tracker).to receive(:idv_letter_requested). + with(success: true, resend: true) + + put :create + end + it 'redirects to capture password if pii is locked' do pii_cacher = instance_double(Pii::Cacher) allow(pii_cacher).to receive(:fetch).and_return(nil)