diff --git a/app/controllers/accounts/connected_accounts_controller.rb b/app/controllers/accounts/connected_accounts_controller.rb index da0e0940767..ada1d08095e 100644 --- a/app/controllers/accounts/connected_accounts_controller.rb +++ b/app/controllers/accounts/connected_accounts_controller.rb @@ -10,7 +10,7 @@ def show decrypted_pii: nil, personal_key: flash[:personal_key], sp_session_request_url: sp_session_request_url_with_updated_params, - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, user: current_user, locked_for_session: pii_locked_for_session?(current_user), ) diff --git a/app/controllers/accounts/history_controller.rb b/app/controllers/accounts/history_controller.rb index 00b69f95789..542626588b1 100644 --- a/app/controllers/accounts/history_controller.rb +++ b/app/controllers/accounts/history_controller.rb @@ -10,7 +10,7 @@ def show decrypted_pii: nil, personal_key: flash[:personal_key], sp_session_request_url: sp_session_request_url_with_updated_params, - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, user: current_user, locked_for_session: pii_locked_for_session?(current_user), ) diff --git a/app/controllers/accounts/two_factor_authentication_controller.rb b/app/controllers/accounts/two_factor_authentication_controller.rb index a17fa96ea0c..fb58dcbc14a 100644 --- a/app/controllers/accounts/two_factor_authentication_controller.rb +++ b/app/controllers/accounts/two_factor_authentication_controller.rb @@ -11,7 +11,7 @@ def show decrypted_pii: nil, personal_key: flash[:personal_key], sp_session_request_url: sp_session_request_url_with_updated_params, - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, user: current_user, locked_for_session: pii_locked_for_session?(current_user), ) diff --git a/app/controllers/accounts_controller.rb b/app/controllers/accounts_controller.rb index f9ec08ed644..ffce59fe5f9 100644 --- a/app/controllers/accounts_controller.rb +++ b/app/controllers/accounts_controller.rb @@ -13,7 +13,7 @@ def show decrypted_pii: cacher.fetch, personal_key: flash[:personal_key], sp_session_request_url: sp_session_request_url_with_updated_params, - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, user: current_user, locked_for_session: pii_locked_for_session?(current_user), ) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 200bb874405..54407ba694c 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -25,7 +25,7 @@ class ApplicationController < ActionController::Base rescue_from error, with: :render_timeout end - helper_method :decorated_session, :user_fully_authenticated? + helper_method :decorated_sp_session, :user_fully_authenticated? prepend_before_action :add_new_relic_trace_attributes prepend_before_action :session_expires_at @@ -79,15 +79,15 @@ def user_event_creator @user_event_creator ||= UserEventCreator.new(request: request, current_user: current_user) end delegate :create_user_event, :create_user_event_with_disavowal, to: :user_event_creator - delegate :remember_device_default, to: :decorated_session + delegate :remember_device_default, to: :decorated_sp_session - def decorated_session - @decorated_session ||= DecoratedSession.new( + def decorated_sp_session + @decorated_sp_session ||= ServiceProviderSessionCreator.new( sp: current_sp, view_context: view_context, sp_session: sp_session, service_provider_request: service_provider_request, - ).call + ).create_session end def default_url_options diff --git a/app/controllers/concerns/idv_session.rb b/app/controllers/concerns/idv_session.rb index 82e107452b0..81658a78fca 100644 --- a/app/controllers/concerns/idv_session.rb +++ b/app/controllers/concerns/idv_session.rb @@ -8,7 +8,7 @@ module IdvSession def confirm_idv_needed return if idv_session_user.active_profile.blank? || - decorated_session.requested_more_recent_verification? || + decorated_sp_session.requested_more_recent_verification? || idv_session_user.reproof_for_irs?(service_provider: current_sp) redirect_to idv_activated_url diff --git a/app/controllers/concerns/remember_device_concern.rb b/app/controllers/concerns/remember_device_concern.rb index 12a35e1a55c..7617fb6b58a 100644 --- a/app/controllers/concerns/remember_device_concern.rb +++ b/app/controllers/concerns/remember_device_concern.rb @@ -18,7 +18,7 @@ def check_remember_device_preference return if remember_device_cookie.nil? return unless remember_device_cookie.valid_for_user?( user: current_user, - expiration_interval: decorated_session.mfa_expiration_interval, + expiration_interval: decorated_sp_session.mfa_expiration_interval, ) handle_valid_remember_device_cookie(remember_device_cookie: remember_device_cookie) @@ -35,7 +35,7 @@ def remember_device_cookie def remember_device_expired_for_sp? expired_for_interval?( current_user, - decorated_session.mfa_expiration_interval, + decorated_sp_session.mfa_expiration_interval, ) end diff --git a/app/controllers/concerns/secure_headers_concern.rb b/app/controllers/concerns/secure_headers_concern.rb index 380b6c291a6..d7e7e3496b1 100644 --- a/app/controllers/concerns/secure_headers_concern.rb +++ b/app/controllers/concerns/secure_headers_concern.rb @@ -21,7 +21,7 @@ def csp_uris # Returns fully formed CSP array w/"'self'" and redirect_uris SecureHeadersAllowList.csp_with_sp_redirect_uris( authorize_params[:redirect_uri], - decorated_session.sp_redirect_uris, + decorated_sp_session.sp_redirect_uris, ) end diff --git a/app/controllers/events_controller.rb b/app/controllers/events_controller.rb index b05a2ebebcf..c3496720b99 100644 --- a/app/controllers/events_controller.rb +++ b/app/controllers/events_controller.rb @@ -11,7 +11,7 @@ def show decrypted_pii: nil, personal_key: nil, sp_session_request_url: sp_session_request_url_with_updated_params, - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, user: current_user, locked_for_session: pii_locked_for_session?(current_user), ) diff --git a/app/controllers/idv/by_mail/enter_code_controller.rb b/app/controllers/idv/by_mail/enter_code_controller.rb index 95376bf6c19..daa730f6211 100644 --- a/app/controllers/idv/by_mail/enter_code_controller.rb +++ b/app/controllers/idv/by_mail/enter_code_controller.rb @@ -102,10 +102,10 @@ def prepare_for_personal_key UserAlerts::AlertUserAboutAccountVerified.call( user: current_user, date_time: event.created_at, - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, ) flash[:success] = t('account.index.verification.success') - end + end idv_session.address_verification_mechanism = 'gpo' idv_session.address_confirmed! diff --git a/app/controllers/idv/cancellations_controller.rb b/app/controllers/idv/cancellations_controller.rb index 6cfe98418ef..c70401590b4 100644 --- a/app/controllers/idv/cancellations_controller.rb +++ b/app/controllers/idv/cancellations_controller.rb @@ -10,7 +10,7 @@ def new self.session_go_back_path = go_back_path || idv_path @hybrid_session = hybrid_session? @presenter = CancellationsPresenter.new( - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, url_options: url_options, ) end @@ -72,7 +72,7 @@ def cancel_session end def cancelled_redirect_path - if decorated_session.sp_name + if decorated_sp_session.sp_name return_to_sp_failure_to_proof_path(location_params) else account_path diff --git a/app/controllers/idv/document_capture_controller.rb b/app/controllers/idv/document_capture_controller.rb index a544879732a..1359b6483ca 100644 --- a/app/controllers/idv/document_capture_controller.rb +++ b/app/controllers/idv/document_capture_controller.rb @@ -39,7 +39,7 @@ def extra_view_variables { document_capture_session_uuid: document_capture_session_uuid, flow_path: 'standard', - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, failure_to_proof_url: return_to_sp_failure_to_proof_url(step: 'document_capture'), }.merge( acuant_sdk_upgrade_a_b_testing_variables, diff --git a/app/controllers/idv/getting_started_controller.rb b/app/controllers/idv/getting_started_controller.rb index f52905b1c30..8b24f0e6c62 100644 --- a/app/controllers/idv/getting_started_controller.rb +++ b/app/controllers/idv/getting_started_controller.rb @@ -13,7 +13,7 @@ def show Funnel::DocAuth::RegisterStep.new(current_user.id, sp_session[:issuer]). call('agreement', :view, true) - @sp_name = decorated_session.sp_name || APP_NAME + @sp_name = decorated_sp_session.sp_name || APP_NAME @title = t('doc_auth.headings.getting_started', sp_name: @sp_name) end diff --git a/app/controllers/idv/review_controller.rb b/app/controllers/idv/review_controller.rb index 1fc52488b2a..41c02493483 100644 --- a/app/controllers/idv/review_controller.rb +++ b/app/controllers/idv/review_controller.rb @@ -128,7 +128,7 @@ def init_profile UserAlerts::AlertUserAboutAccountVerified.call( user: current_user, date_time: event.created_at, - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, ) end end diff --git a/app/controllers/idv/session_errors_controller.rb b/app/controllers/idv/session_errors_controller.rb index d7b9ca201c3..0ceaf3434b1 100644 --- a/app/controllers/idv/session_errors_controller.rb +++ b/app/controllers/idv/session_errors_controller.rb @@ -32,7 +32,7 @@ def failure rate_limit_type: :idv_resolution, ) @expires_at = rate_limiter.expires_at - @sp_name = decorated_session.sp_name + @sp_name = decorated_sp_session.sp_name log_event(based_on_limiter: rate_limiter) end diff --git a/app/controllers/idv/welcome_controller.rb b/app/controllers/idv/welcome_controller.rb index e5717309c49..9f3ac24af87 100644 --- a/app/controllers/idv/welcome_controller.rb +++ b/app/controllers/idv/welcome_controller.rb @@ -13,7 +13,7 @@ def show Funnel::DocAuth::RegisterStep.new(current_user.id, sp_session[:issuer]). call('welcome', :view, true) - @sp_name = decorated_session.sp_name || APP_NAME + @sp_name = decorated_sp_session.sp_name || APP_NAME @title = t('doc_auth.headings.getting_started', sp_name: @sp_name) @ab_test_bucket = getting_started_ab_test_bucket diff --git a/app/controllers/idv_controller.rb b/app/controllers/idv_controller.rb index 38b518e9ea4..5dfae346b05 100644 --- a/app/controllers/idv_controller.rb +++ b/app/controllers/idv_controller.rb @@ -10,7 +10,7 @@ class IdvController < ApplicationController before_action :confirm_not_rate_limited def index - if decorated_session.requested_more_recent_verification? || + if decorated_sp_session.requested_more_recent_verification? || current_user.reproof_for_irs?(service_provider: current_sp) verify_identity elsif active_profile? diff --git a/app/controllers/openid_connect/authorization_controller.rb b/app/controllers/openid_connect/authorization_controller.rb index b0e4014c6d4..de08e231166 100644 --- a/app/controllers/openid_connect/authorization_controller.rb +++ b/app/controllers/openid_connect/authorization_controller.rb @@ -88,7 +88,7 @@ def track_handoff_analytics(result, attributes = {}) def identity_needs_verification? (@authorize_form.ial2_requested? && (current_user.identity_not_verified? || - decorated_session.requested_more_recent_verification?)) || + decorated_sp_session.requested_more_recent_verification?)) || current_user.reproof_for_irs?(service_provider: current_sp) end diff --git a/app/controllers/saml_idp_controller.rb b/app/controllers/saml_idp_controller.rb index 08817e30ebc..a9dc846e012 100644 --- a/app/controllers/saml_idp_controller.rb +++ b/app/controllers/saml_idp_controller.rb @@ -152,7 +152,7 @@ def handle_successful_handoff def render_template_for(message, action_url, type) # Returns fully formed CSP array w/"'self'", domain, and ServiceProvider#redirect_uris - redirect_uris = decorated_session.sp_redirect_uris || + redirect_uris = decorated_sp_session.sp_redirect_uris || sp_from_request_issuer_logout&.redirect_uris.to_a.compact csp_uris = SecureHeadersAllowList.csp_with_sp_redirect_uris( action_url, redirect_uris diff --git a/app/controllers/sign_out_controller.rb b/app/controllers/sign_out_controller.rb index 523bb78c3a2..e5c1d6cb09f 100644 --- a/app/controllers/sign_out_controller.rb +++ b/app/controllers/sign_out_controller.rb @@ -6,7 +6,7 @@ def destroy irs_attempts_api_tracker.logout_initiated( success: true, ) - url_after_cancellation = decorated_session.cancel_link_url + url_after_cancellation = decorated_sp_session.cancel_link_url sign_out flash[:success] = t('devise.sessions.signed_out') redirect_to(url_after_cancellation, allow_other_host: true) diff --git a/app/controllers/sign_up/cancellations_controller.rb b/app/controllers/sign_up/cancellations_controller.rb index a10328525f3..9fe393af9c3 100644 --- a/app/controllers/sign_up/cancellations_controller.rb +++ b/app/controllers/sign_up/cancellations_controller.rb @@ -12,7 +12,7 @@ def new def destroy track_account_deletion_event - url_after_cancellation = decorated_session.cancel_link_url + url_after_cancellation = decorated_sp_session.cancel_link_url destroy_user flash[:success] = t('sign_up.cancel.success') redirect_to url_after_cancellation diff --git a/app/controllers/sign_up/completions_controller.rb b/app/controllers/sign_up/completions_controller.rb index 9e82b0bb2be..b5147ae23a3 100644 --- a/app/controllers/sign_up/completions_controller.rb +++ b/app/controllers/sign_up/completions_controller.rb @@ -44,7 +44,7 @@ def completions_presenter current_user: current_user, current_sp: current_sp, decrypted_pii: pii, - requested_attributes: decorated_session.requested_attributes.map(&:to_sym), + requested_attributes: decorated_sp_session.requested_attributes.map(&:to_sym), ial2_requested: ial2_requested?, completion_context: needs_completion_screen_reason, ) @@ -75,7 +75,7 @@ def sign_user_out_and_instruct_to_go_back_to_mobile_app sign_out flash[:info] = t( 'instructions.go_back_to_mobile_app', - friendly_name: decorated_session.sp_name, + friendly_name: decorated_sp_session.sp_name, ) redirect_to new_user_session_url end @@ -83,7 +83,7 @@ def sign_user_out_and_instruct_to_go_back_to_mobile_app def analytics_attributes(page_occurence) { ial2: sp_session[:ial2], ialmax: sp_session[:ialmax], - service_provider_name: decorated_session.sp_name, + service_provider_name: decorated_sp_session.sp_name, sp_session_requested_attributes: sp_session[:requested_attributes], sp_request_requested_attributes: service_provider_request.requested_attributes, page_occurence: page_occurence, diff --git a/app/controllers/two_factor_authentication/sms_opt_in_controller.rb b/app/controllers/two_factor_authentication/sms_opt_in_controller.rb index ff56c8dfd4e..b0de5b8a0eb 100644 --- a/app/controllers/two_factor_authentication/sms_opt_in_controller.rb +++ b/app/controllers/two_factor_authentication/sms_opt_in_controller.rb @@ -72,7 +72,7 @@ def other_options_mfa_url def cancel_url if user_fully_authenticated? account_path - elsif decorated_session.sp_name + elsif decorated_sp_session.sp_name return_to_sp_cancel_path else sign_out_path diff --git a/app/controllers/users/sessions_controller.rb b/app/controllers/users/sessions_controller.rb index f533ae24d2b..8ccf1b2e4b8 100644 --- a/app/controllers/users/sessions_controller.rb +++ b/app/controllers/users/sessions_controller.rb @@ -22,7 +22,7 @@ def new @ial = sp_session_ial @issuer_forced_reauthentication = issuer_forced_reauthentication?( - issuer: decorated_session.sp_issuer, + issuer: decorated_sp_session.sp_issuer, ) analytics.sign_in_page_visit( flash: flash[:alert], diff --git a/app/decorators/session_decorator.rb b/app/decorators/null_service_provider_session.rb similarity index 95% rename from app/decorators/session_decorator.rb rename to app/decorators/null_service_provider_session.rb index 9e773a68078..4608ca4d9d5 100644 --- a/app/decorators/session_decorator.rb +++ b/app/decorators/null_service_provider_session.rb @@ -1,4 +1,4 @@ -class SessionDecorator +class NullServiceProviderSession def initialize(view_context: nil) @view_context = view_context end diff --git a/app/decorators/service_provider_session_decorator.rb b/app/decorators/service_provider_session.rb similarity index 98% rename from app/decorators/service_provider_session_decorator.rb rename to app/decorators/service_provider_session.rb index cf9f35054ed..9a651d34b80 100644 --- a/app/decorators/service_provider_session_decorator.rb +++ b/app/decorators/service_provider_session.rb @@ -1,4 +1,4 @@ -class ServiceProviderSessionDecorator +class ServiceProviderSession include ActionView::Helpers::TranslationHelper include Rails.application.routes.url_helpers diff --git a/app/services/decorated_session.rb b/app/services/service_provider_session_creator.rb similarity index 75% rename from app/services/decorated_session.rb rename to app/services/service_provider_session_creator.rb index dafe9f19bba..b85e540079f 100644 --- a/app/services/decorated_session.rb +++ b/app/services/service_provider_session_creator.rb @@ -1,4 +1,4 @@ -class DecoratedSession +class ServiceProviderSessionCreator def initialize(sp:, view_context:, sp_session:, service_provider_request:) @sp = sp @view_context = view_context @@ -6,16 +6,16 @@ def initialize(sp:, view_context:, sp_session:, service_provider_request:) @service_provider_request = service_provider_request end - def call + def create_session if sp - ServiceProviderSessionDecorator.new( + ServiceProviderSession.new( sp: sp, view_context: view_context, sp_session: sp_session, service_provider_request: service_provider_request, ) else - SessionDecorator.new(view_context: view_context) + NullServiceProviderSession.new(view_context: view_context) end end diff --git a/app/views/devise/passwords/new.html.erb b/app/views/devise/passwords/new.html.erb index 37aaf93c85c..d35f0880bff 100644 --- a/app/views/devise/passwords/new.html.erb +++ b/app/views/devise/passwords/new.html.erb @@ -25,5 +25,5 @@ <% end %> <%= render(PageFooterComponent.new) do %> - <%= link_to t('links.cancel'), decorated_session.cancel_link_url %> + <%= link_to t('links.cancel'), decorated_sp_session.cancel_link_url %> <% end %> diff --git a/app/views/devise/sessions/_return_to_service_provider.html.erb b/app/views/devise/sessions/_return_to_service_provider.html.erb index bf968cedefa..03bbc9b2248 100644 --- a/app/views/devise/sessions/_return_to_service_provider.html.erb +++ b/app/views/devise/sessions/_return_to_service_provider.html.erb @@ -1,4 +1,4 @@ <%= link_to( - "‹ #{t('links.back_to_sp', sp: decorated_session.sp_name)}", + "‹ #{t('links.back_to_sp', sp: decorated_sp_session.sp_name)}", return_to_sp_cancel_path, ) %> diff --git a/app/views/devise/sessions/new.html.erb b/app/views/devise/sessions/new.html.erb index 196360f07e3..812ff5db775 100644 --- a/app/views/devise/sessions/new.html.erb +++ b/app/views/devise/sessions/new.html.erb @@ -1,6 +1,6 @@ <% title t('titles.visitors.index') %> -<% if decorated_session.sp_name %> +<% if decorated_sp_session.sp_name %> <%= render 'sign_up/registrations/sp_registration_heading' %> <% end %> @@ -19,7 +19,7 @@ <% if @issuer_forced_reauthentication %>

- <%= t('account.login.forced_reauthentication_notice_html', sp_name: decorated_session.sp_name) %> + <%= t('account.login.forced_reauthentication_notice_html', sp_name: decorated_sp_session.sp_name) %>

<% end %> @@ -64,7 +64,7 @@ <% end %> <%= render PageFooterComponent.new do %> - <% if decorated_session.sp_name %> + <% if decorated_sp_session.sp_name %>
<%= render 'devise/sessions/return_to_service_provider' %>
diff --git a/app/views/idv/by_mail/letter_enqueued/show.html.erb b/app/views/idv/by_mail/letter_enqueued/show.html.erb index 9294f8ae88a..3922a682d29 100644 --- a/app/views/idv/by_mail/letter_enqueued/show.html.erb +++ b/app/views/idv/by_mail/letter_enqueued/show.html.erb @@ -26,14 +26,14 @@ <%= t('idv.messages.come_back_later_password_html') %>

- <% if decorated_session.sp_name.present? %> - <%= t('idv.messages.come_back_later_sp_html', sp: decorated_session.sp_name) %> + <% if decorated_sp_session.sp_name.present? %> + <%= t('idv.messages.come_back_later_sp_html', sp: decorated_sp_session.sp_name) %> <% else %> <%= t('idv.messages.come_back_later_no_sp_html', app_name: APP_NAME) %> <% end %>

- <% if decorated_session.sp_name.present? %> + <% if decorated_sp_session.sp_name.present? %> <%= link_to( t('idv.cancel.actions.exit', app_name: APP_NAME), return_to_sp_cancel_path(location: :come_back_later), diff --git a/app/views/idv/document_capture/show.html.erb b/app/views/idv/document_capture/show.html.erb index 07dbb4153b6..817d3cc0c0e 100644 --- a/app/views/idv/document_capture/show.html.erb +++ b/app/views/idv/document_capture/show.html.erb @@ -2,7 +2,7 @@ 'idv/shared/document_capture', document_capture_session_uuid: document_capture_session_uuid, flow_path: 'standard', - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, failure_to_proof_url: failure_to_proof_url, acuant_sdk_upgrade_a_b_testing_enabled: acuant_sdk_upgrade_a_b_testing_enabled, use_alternate_sdk: use_alternate_sdk, diff --git a/app/views/idv/hybrid_mobile/document_capture/show.html.erb b/app/views/idv/hybrid_mobile/document_capture/show.html.erb index 6940050a0eb..962a29d216b 100644 --- a/app/views/idv/hybrid_mobile/document_capture/show.html.erb +++ b/app/views/idv/hybrid_mobile/document_capture/show.html.erb @@ -2,7 +2,7 @@ 'idv/shared/document_capture', document_capture_session_uuid: document_capture_session_uuid, flow_path: 'hybrid', - sp_name: decorated_session.sp_name, + sp_name: decorated_sp_session.sp_name, failure_to_proof_url: failure_to_proof_url, acuant_sdk_upgrade_a_b_testing_enabled: acuant_sdk_upgrade_a_b_testing_enabled, use_alternate_sdk: use_alternate_sdk, diff --git a/app/views/idv/not_verified/show.html.erb b/app/views/idv/not_verified/show.html.erb index 1721694124c..81da87ddea8 100644 --- a/app/views/idv/not_verified/show.html.erb +++ b/app/views/idv/not_verified/show.html.erb @@ -4,9 +4,9 @@ heading: t('idv.failure.verify.heading'), ) do %>

- <% if decorated_session.sp_name.present? %> + <% if decorated_sp_session.sp_name.present? %> <%= link_to( - t('idv.failure.verify.fail_link_html', sp_name: decorated_session.sp_name), + t('idv.failure.verify.fail_link_html', sp_name: decorated_sp_session.sp_name), return_to_sp_failure_to_proof_path( step: 'verify_info', location: request.params[:action], diff --git a/app/views/idv/phone_errors/_warning.html.erb b/app/views/idv/phone_errors/_warning.html.erb index 3c993d86915..1db68d18f5d 100644 --- a/app/views/idv/phone_errors/_warning.html.erb +++ b/app/views/idv/phone_errors/_warning.html.erb @@ -36,12 +36,12 @@ locals: text: t('idv.troubleshooting.options.verify_by_mail'), url: idv_request_letter_path, }, - decorated_session.sp_name && { + decorated_sp_session.sp_name && { url: return_to_sp_failure_to_proof_path( step: 'phone', location: local_assigns.fetch(:name, 'warning'), ), - text: t('idv.troubleshooting.options.get_help_at_sp', sp_name: decorated_session.sp_name), + text: t('idv.troubleshooting.options.get_help_at_sp', sp_name: decorated_sp_session.sp_name), new_tab: true, }, ].select(&:present?), diff --git a/app/views/idv/session_errors/exception.html.erb b/app/views/idv/session_errors/exception.html.erb index 57296187ddc..cf8338fc047 100644 --- a/app/views/idv/session_errors/exception.html.erb +++ b/app/views/idv/session_errors/exception.html.erb @@ -12,12 +12,12 @@ text: t('idv.troubleshooting.options.contact_support', app_name: APP_NAME), new_tab: true, }, - decorated_session.sp_name && { + decorated_sp_session.sp_name && { url: return_to_sp_failure_to_proof_path( step: 'verify_info', location: request.params[:action], ), - text: t('idv.troubleshooting.options.get_help_at_sp', sp_name: decorated_session.sp_name), + text: t('idv.troubleshooting.options.get_help_at_sp', sp_name: decorated_sp_session.sp_name), new_tab: true, }, ].compact, diff --git a/app/views/idv/session_errors/rate_limited.html.erb b/app/views/idv/session_errors/rate_limited.html.erb index e7fe95ac22d..2e8e8cf638b 100644 --- a/app/views/idv/session_errors/rate_limited.html.erb +++ b/app/views/idv/session_errors/rate_limited.html.erb @@ -21,11 +21,11 @@

- <% if decorated_session.sp_name.present? %> + <% if decorated_sp_session.sp_name.present? %> <%= link_to( t( 'idv.failure.exit.with_sp', - app_name: APP_NAME, sp_name: decorated_session.sp_name, + app_name: APP_NAME, sp_name: decorated_sp_session.sp_name, ), return_to_sp_failure_to_proof_path( step: 'verify_id', diff --git a/app/views/idv/shared/_document_capture.html.erb b/app/views/idv/shared/_document_capture.html.erb index 41b1b41d88d..6ca5755bbff 100644 --- a/app/views/idv/shared/_document_capture.html.erb +++ b/app/views/idv/shared/_document_capture.html.erb @@ -27,7 +27,7 @@ flow_path: flow_path, cancel_url: idv_cancel_path, failure_to_proof_url: failure_to_proof_url, - idv_in_person_url: (IdentityConfig.store.in_person_doc_auth_button_enabled && Idv::InPersonConfig.enabled_for_issuer?(decorated_session.sp_issuer)) ? idv_in_person_url : nil, + idv_in_person_url: (IdentityConfig.store.in_person_doc_auth_button_enabled && Idv::InPersonConfig.enabled_for_issuer?(decorated_sp_session.sp_issuer)) ? idv_in_person_url : nil, security_and_privacy_how_it_works_url: MarketingSite.security_and_privacy_how_it_works_url, in_person_full_address_entry_enabled: IdentityConfig.store.in_person_full_address_entry_enabled, in_person_outage_message_enabled: IdentityConfig.store.in_person_outage_message_enabled, diff --git a/app/views/idv/unavailable/show.html.erb b/app/views/idv/unavailable/show.html.erb index 9815916580a..0bbf62201da 100644 --- a/app/views/idv/unavailable/show.html.erb +++ b/app/views/idv/unavailable/show.html.erb @@ -5,8 +5,8 @@ <% c.with_header { t('idv.titles.unavailable') } %>

- <% if decorated_session.sp_name.present? %> - <%= t('idv.unavailable.idv_explanation.with_sp_html', sp: decorated_session.sp_name) %> + <% if decorated_sp_session.sp_name.present? %> + <%= t('idv.unavailable.idv_explanation.with_sp_html', sp: decorated_sp_session.sp_name) %> <% else %> <%= t('idv.unavailable.idv_explanation.without_sp') %> <% end %> diff --git a/app/views/idv/welcome/_welcome_default.html.erb b/app/views/idv/welcome/_welcome_default.html.erb index 1c516a5a7bb..80469d2a571 100644 --- a/app/views/idv/welcome/_welcome_default.html.erb +++ b/app/views/idv/welcome/_welcome_default.html.erb @@ -11,12 +11,12 @@ <%= render JavascriptRequiredComponent.new( header: t('idv.welcome.no_js_header'), - intro: t('idv.welcome.no_js_intro', sp_name: decorated_session.sp_name || APP_NAME), + intro: t('idv.welcome.no_js_intro', sp_name: decorated_sp_session.sp_name || APP_NAME), ) do %> <%= render PageHeadingComponent.new.with_content(t('doc_auth.headings.welcome')) %>

- <%= t('doc_auth.info.welcome', sp_name: decorated_session.sp_name || APP_NAME) %> + <%= t('doc_auth.info.welcome', sp_name: decorated_sp_session.sp_name || APP_NAME) %>

<%= t('doc_auth.instructions.welcome') %>

@@ -81,9 +81,9 @@ text: t('idv.troubleshooting.options.learn_more_address_verification_options'), new_tab: true, }, - decorated_session.sp_name && { + decorated_sp_session.sp_name && { url: return_to_sp_failure_to_proof_url(step: 'welcome', location: 'missing_items'), - text: t('idv.troubleshooting.options.get_help_at_sp', sp_name: decorated_session.sp_name), + text: t('idv.troubleshooting.options.get_help_at_sp', sp_name: decorated_sp_session.sp_name), new_tab: true, }, ].select(&:present?), diff --git a/app/views/shared/_banner.html.erb b/app/views/shared/_banner.html.erb index abd643ee18f..933c4451593 100644 --- a/app/views/shared/_banner.html.erb +++ b/app/views/shared/_banner.html.erb @@ -66,7 +66,7 @@ <% if content_for?(:header) %> <%= yield(:header) %> <% else %> - <% if decorated_session.sp_name %> + <% if decorated_sp_session.sp_name %> <%= render 'shared/nav_branded' %> <% else %> <%= render 'shared/nav_lite' %> diff --git a/app/views/shared/_nav_branded.html.erb b/app/views/shared/_nav_branded.html.erb index 547bbf877c5..8dfcf6fe79c 100644 --- a/app/views/shared/_nav_branded.html.erb +++ b/app/views/shared/_nav_branded.html.erb @@ -1,3 +1,3 @@ <%= image_tag(asset_url('logo.svg'), height: 15, width: 111, alt: APP_NAME) %>
-<%= image_tag(decorated_session.sp_logo_url, height: 40, alt: decorated_session.sp_name) %> +<%= image_tag(decorated_sp_session.sp_logo_url, height: 40, alt: decorated_sp_session.sp_name) %> diff --git a/app/views/shared/_sp_alert.html.erb b/app/views/shared/_sp_alert.html.erb index 211785df9b2..ac2ff7601ef 100644 --- a/app/views/shared/_sp_alert.html.erb +++ b/app/views/shared/_sp_alert.html.erb @@ -1,4 +1,4 @@ -<% alert = decorated_session.sp_alert(section) %> +<% alert = decorated_sp_session.sp_alert(section) %> <% if alert %> <%= render AlertComponent.new(text_tag: 'div', class: 'margin-bottom-4') do %> <%= raw sanitize(alert, tags: %w[a b strong em br p ol ul li], attributes: %w[href target]) %> diff --git a/app/views/sign_up/registrations/_sp_registration_heading.html.erb b/app/views/sign_up/registrations/_sp_registration_heading.html.erb index 9729c698dba..1bebb5e7078 100644 --- a/app/views/sign_up/registrations/_sp_registration_heading.html.erb +++ b/app/views/sign_up/registrations/_sp_registration_heading.html.erb @@ -1,7 +1,7 @@
<%= image_tag(asset_url('user-access.svg'), width: '280', height: '91', alt: '') %>

- <%= decorated_session.sp_name %> + <%= decorated_sp_session.sp_name %> <%= t('headings.create_account_with_sp.sp_text', app_name: APP_NAME) %>

diff --git a/app/views/sign_up/registrations/new.html.erb b/app/views/sign_up/registrations/new.html.erb index 3c6e816de19..be7a81383ed 100644 --- a/app/views/sign_up/registrations/new.html.erb +++ b/app/views/sign_up/registrations/new.html.erb @@ -2,7 +2,7 @@ <%= render 'shared/sp_alert', section: 'sign_up' %> -<% if decorated_session.sp_name %> +<% if decorated_sp_session.sp_name %> <%= render 'sign_up/registrations/sp_registration_heading' %> <% end %> @@ -49,7 +49,7 @@ <%= f.submit t('forms.buttons.submit.default'), class: 'display-block margin-y-5' %> <% end %> -<%= render 'shared/cancel', link: decorated_session.cancel_link_url %> +<%= render 'shared/cancel', link: decorated_sp_session.cancel_link_url %>

<%= new_tab_link_to( diff --git a/app/views/users/authorization_confirmation/new.html.erb b/app/views/users/authorization_confirmation/new.html.erb index 1fe25a712b7..6e9a9e560cd 100644 --- a/app/views/users/authorization_confirmation/new.html.erb +++ b/app/views/users/authorization_confirmation/new.html.erb @@ -1,9 +1,9 @@ <% title t('titles.sign_up.confirmation') %> -<% if decorated_session.sp_name %> +<% if decorated_sp_session.sp_name %> <%= render 'sign_up/registrations/sp_registration_heading' %> <% else %> - <%= render PageHeadingComponent.new.with_content(decorated_session.new_session_heading) %> + <%= render PageHeadingComponent.new.with_content(decorated_sp_session.new_session_heading) %> <% end %>

diff --git a/app/views/users/emails/show.html.erb b/app/views/users/emails/show.html.erb index cb2ebc6adba..4a8be837f9e 100644 --- a/app/views/users/emails/show.html.erb +++ b/app/views/users/emails/show.html.erb @@ -19,7 +19,7 @@ <% end %>
-<%= render 'shared/cancel', link: decorated_session.cancel_link_url %> +<%= render 'shared/cancel', link: decorated_sp_session.cancel_link_url %>

<%= new_tab_link_to( diff --git a/app/views/users/rules_of_use/new.html.erb b/app/views/users/rules_of_use/new.html.erb index b4a16bd29ed..51dcd69d62a 100644 --- a/app/views/users/rules_of_use/new.html.erb +++ b/app/views/users/rules_of_use/new.html.erb @@ -32,4 +32,4 @@ <%= f.submit t('forms.buttons.continue'), class: 'margin-y-5' %> <% end %> -<%= render 'shared/cancel', link: decorated_session.cancel_link_url %> +<%= render 'shared/cancel', link: decorated_sp_session.cancel_link_url %> diff --git a/app/views/users/second_mfa_reminder/new.html.erb b/app/views/users/second_mfa_reminder/new.html.erb index ddd11767062..1029f043cad 100644 --- a/app/views/users/second_mfa_reminder/new.html.erb +++ b/app/views/users/second_mfa_reminder/new.html.erb @@ -27,7 +27,7 @@ outline: true, big: true, full_width: true, - ).with_content(t('users.second_mfa_reminder.continue', sp_name: decorated_session.sp_name || APP_NAME)) %> + ).with_content(t('users.second_mfa_reminder.continue', sp_name: decorated_sp_session.sp_name || APP_NAME)) %>

<% end %> diff --git a/config/brakeman.ignore b/config/brakeman.ignore index 845bbe1bb41..a7bf5ee9ed6 100644 --- a/config/brakeman.ignore +++ b/config/brakeman.ignore @@ -15,7 +15,7 @@ "type": "controller", "class": "Idv::CancellationsController", "method": "new", - "line": 14, + "line": 13, "file": "app/controllers/idv/cancellations_controller.rb", "rendered": { "name": "idv/cancellations/new", @@ -49,7 +49,7 @@ "type": "controller", "class": "Idv::CancellationsController", "method": "new", - "line": 14, + "line": 13, "file": "app/controllers/idv/cancellations_controller.rb", "rendered": { "name": "idv/cancellations/new", @@ -71,19 +71,19 @@ { "warning_type": "Dynamic Render Path", "warning_code": 15, - "fingerprint": "c39b10ff7d74fad282e9769c664c8ae50b1a79403169354b0654037488671bce", + "fingerprint": "ffc1a9fa8c18bd803bf353cbaebf0c8ca890b71574cedc4efded0dda941a4719", "check_name": "Render", "message": "Render path contains parameter value", "file": "app/views/idv/cancellations/new.html.erb", "line": 62, "link": "https://brakemanscanner.org/docs/warning_types/dynamic_render_path/", - "code": "render(action => SpinnerButtonComponent.new(:action => (lambda do\n button_to(idv_cancel_path(:step => params[:step], :location => \"cancel\"), { **tag_options }, &block)\n end), :method => :delete, :big => true, :wide => true, :outline => true, :form => ({ :data => ({ :form_steps_wait => \"\" }) })).with_content(CancellationsPresenter.new(:sp_name => decorated_session.sp_name, :url_options => url_options).exit_action_text), {})", + "code": "render(action => SpinnerButtonComponent.new(:action => (lambda do\n button_to(idv_cancel_path(:step => params[:step], :location => \"cancel\"), { **tag_options }, &block)\n end), :method => :delete, :big => true, :wide => true, :outline => true, :form => ({ :data => ({ :form_steps_wait => \"\" }) })).with_content(CancellationsPresenter.new(:sp_name => decorated_sp_session.sp_name, :url_options => url_options).exit_action_text), {})", "render_path": [ { "type": "controller", "class": "Idv::CancellationsController", "method": "new", - "line": 14, + "line": 13, "file": "app/controllers/idv/cancellations_controller.rb", "rendered": { "name": "idv/cancellations/new", @@ -103,6 +103,6 @@ "note": "" } ], - "updated": "2023-01-03 12:29:54 -0600", - "brakeman_version": "5.4.0" + "updated": "2023-09-14 11:53:14 -0400", + "brakeman_version": "6.0.1" } diff --git a/spec/controllers/idv/session_errors_controller_spec.rb b/spec/controllers/idv/session_errors_controller_spec.rb index 95e4e9da7e6..f677e43ed25 100644 --- a/spec/controllers/idv/session_errors_controller_spec.rb +++ b/spec/controllers/idv/session_errors_controller_spec.rb @@ -246,9 +246,9 @@ end it 'assigns sp_name' do - decorated_session = double - allow(decorated_session).to receive(:sp_name).and_return('Example SP') - allow(controller).to receive(:decorated_session).and_return(decorated_session) + decorated_sp_session = double + allow(decorated_sp_session).to receive(:sp_name).and_return('Example SP') + allow(controller).to receive(:decorated_sp_session).and_return(decorated_sp_session) get action expect(assigns(:sp_name)).to eql('Example SP') end diff --git a/spec/controllers/sign_out_controller_spec.rb b/spec/controllers/sign_out_controller_spec.rb index 26086f1c32e..32a1764884e 100644 --- a/spec/controllers/sign_out_controller_spec.rb +++ b/spec/controllers/sign_out_controller_spec.rb @@ -2,9 +2,9 @@ RSpec.describe SignOutController do describe '#destroy' do - it 'redirects to decorated_session.cancel_link_url with flash message' do + it 'redirects to decorated_sp_session.cancel_link_url with flash message' do stub_sign_in_before_2fa - allow(controller.decorated_session).to receive(:cancel_link_url).and_return('foo') + allow(controller.decorated_sp_session).to receive(:cancel_link_url).and_return('foo') get :destroy @@ -23,7 +23,7 @@ stub_sign_in_before_2fa stub_analytics stub_attempts_tracker - allow(controller.decorated_session).to receive(:cancel_link_url).and_return('foo') + allow(controller.decorated_sp_session).to receive(:cancel_link_url).and_return('foo') expect(@analytics). to receive(:track_event).with('Logout Initiated', hash_including(method: 'cancel link')) diff --git a/spec/controllers/sign_up/completions_controller_spec.rb b/spec/controllers/sign_up/completions_controller_spec.rb index 2726262ab6a..60095800142 100644 --- a/spec/controllers/sign_up/completions_controller_spec.rb +++ b/spec/controllers/sign_up/completions_controller_spec.rb @@ -39,7 +39,7 @@ 'User registration: agency handoff visited', ial2: false, ialmax: nil, - service_provider_name: subject.decorated_session.sp_name, + service_provider_name: subject.decorated_sp_session.sp_name, page_occurence: '', needs_completion_screen_reason: :new_sp, sp_request_requested_attributes: nil, @@ -76,7 +76,7 @@ 'User registration: agency handoff visited', ial2: true, ialmax: nil, - service_provider_name: subject.decorated_session.sp_name, + service_provider_name: subject.decorated_sp_session.sp_name, page_occurence: '', needs_completion_screen_reason: :new_sp, sp_request_requested_attributes: nil, @@ -114,7 +114,7 @@ 'User registration: agency handoff visited', ial2: false, ialmax: true, - service_provider_name: subject.decorated_session.sp_name, + service_provider_name: subject.decorated_sp_session.sp_name, page_occurence: '', needs_completion_screen_reason: :new_sp, sp_request_requested_attributes: nil, @@ -215,7 +215,7 @@ 'User registration: complete', ial2: false, ialmax: nil, - service_provider_name: subject.decorated_session.sp_name, + service_provider_name: subject.decorated_sp_session.sp_name, page_occurence: 'agency-page', needs_completion_screen_reason: :new_sp, sp_request_requested_attributes: nil, @@ -276,7 +276,7 @@ 'User registration: complete', ial2: true, ialmax: nil, - service_provider_name: subject.decorated_session.sp_name, + service_provider_name: subject.decorated_sp_session.sp_name, page_occurence: 'agency-page', needs_completion_screen_reason: :new_sp, sp_request_requested_attributes: nil, diff --git a/spec/controllers/two_factor_authentication/sms_opt_in_controller_spec.rb b/spec/controllers/two_factor_authentication/sms_opt_in_controller_spec.rb index 5af32a23f9f..1ee9d7e80d2 100644 --- a/spec/controllers/two_factor_authentication/sms_opt_in_controller_spec.rb +++ b/spec/controllers/two_factor_authentication/sms_opt_in_controller_spec.rb @@ -14,8 +14,8 @@ before do stub_sign_in_before_2fa(user) stub_analytics - allow(controller).to receive(:decorated_session). - and_return(instance_double('SessionDecorator', sp_name: sp_name)) + allow(controller).to receive(:decorated_sp_session). + and_return(instance_double('NullServiceProviderSession', sp_name: sp_name)) end it 'tracks a visit event' do diff --git a/spec/decorators/session_decorator_spec.rb b/spec/decorators/null_service_provider_session_spec.rb similarity index 82% rename from spec/decorators/session_decorator_spec.rb rename to spec/decorators/null_service_provider_session_spec.rb index f8e0ee38504..c36fc8b16c1 100644 --- a/spec/decorators/session_decorator_spec.rb +++ b/spec/decorators/null_service_provider_session_spec.rb @@ -1,7 +1,7 @@ require 'rails_helper' -RSpec.describe SessionDecorator do - subject { SessionDecorator.new } +RSpec.describe NullServiceProviderSession do + subject { NullServiceProviderSession.new } describe '#new_session_heading' do it 'returns the correct string' do @@ -33,9 +33,9 @@ it 'returns view_context.root url' do view_context = ActionController::Base.new.view_context allow(view_context).to receive(:root_url).and_return('http://www.example.com') - decorator = SessionDecorator.new(view_context: view_context) + null_sp_session = NullServiceProviderSession.new(view_context: view_context) - expect(decorator.cancel_link_url).to eq 'http://www.example.com' + expect(null_sp_session.cancel_link_url).to eq 'http://www.example.com' end end diff --git a/spec/decorators/service_provider_session_decorator_spec.rb b/spec/decorators/service_provider_session_spec.rb similarity index 93% rename from spec/decorators/service_provider_session_decorator_spec.rb rename to spec/decorators/service_provider_session_spec.rb index bc7acf9e58c..3afc96504d0 100644 --- a/spec/decorators/service_provider_session_decorator_spec.rb +++ b/spec/decorators/service_provider_session_spec.rb @@ -1,9 +1,9 @@ require 'rails_helper' -RSpec.describe ServiceProviderSessionDecorator do +RSpec.describe ServiceProviderSession do let(:view_context) { ActionController::Base.new.view_context } subject(:session_decorator) do - ServiceProviderSessionDecorator.new( + ServiceProviderSession.new( sp: sp, view_context: view_context, sp_session: {}, @@ -20,8 +20,8 @@ and_return('/sign_up/enter_email') end - it 'has the same public API as SessionDecorator' do - SessionDecorator.public_instance_methods.each do |method| + it 'has the same public API as NullServiceProviderSession' do + NullServiceProviderSession.public_instance_methods.each do |method| expect( described_class.public_method_defined?(method), ).to be(true), "expected #{described_class} to have ##{method}" @@ -86,7 +86,7 @@ it 'returns the agency name if friendly name is not present' do sp = build_stubbed(:service_provider, friendly_name: nil) - subject = ServiceProviderSessionDecorator.new( + subject = ServiceProviderSession.new( sp: sp, view_context: view_context, sp_session: {}, @@ -103,7 +103,7 @@ sp_logo = 'real_logo.svg' sp = build_stubbed(:service_provider, logo: sp_logo) - subject = ServiceProviderSessionDecorator.new( + subject = ServiceProviderSession.new( sp: sp, view_context: view_context, sp_session: {}, @@ -118,7 +118,7 @@ it 'returns the default logo' do sp = build_stubbed(:service_provider, logo: nil) - subject = ServiceProviderSessionDecorator.new( + subject = ServiceProviderSession.new( sp: sp, view_context: view_context, sp_session: {}, @@ -136,7 +136,7 @@ sp_logo = '18f.svg' sp = build_stubbed(:service_provider, logo: sp_logo) - subject = ServiceProviderSessionDecorator.new( + subject = ServiceProviderSession.new( sp: sp, view_context: view_context, sp_session: {}, @@ -151,7 +151,7 @@ it 'returns the default logo' do sp = build_stubbed(:service_provider, logo: nil) - subject = ServiceProviderSessionDecorator.new( + subject = ServiceProviderSession.new( sp: sp, view_context: view_context, sp_session: {}, @@ -166,7 +166,7 @@ it 'does not raise an exception' do sp = build_stubbed(:service_provider, logo: 'abc') - subject = ServiceProviderSessionDecorator.new( + subject = ServiceProviderSession.new( sp: sp, view_context: view_context, sp_session: {}, @@ -180,7 +180,7 @@ describe '#cancel_link_url' do subject(:decorator) do - ServiceProviderSessionDecorator.new( + ServiceProviderSession.new( sp: sp, view_context: view_context, sp_session: { request_id: 'foo' }, diff --git a/spec/features/idv/cancel_spec.rb b/spec/features/idv/cancel_spec.rb index 6d97ce5d45e..2763a5798ea 100644 --- a/spec/features/idv/cancel_spec.rb +++ b/spec/features/idv/cancel_spec.rb @@ -132,7 +132,7 @@ it 'shows the user a cancellation message with the option to cancel and reset idv', :js do sp_name = 'Test SP' - allow_any_instance_of(ServiceProviderSessionDecorator).to receive(:sp_name). + allow_any_instance_of(ServiceProviderSession).to receive(:sp_name). and_return(sp_name) click_link t('links.cancel') diff --git a/spec/features/idv/doc_auth/document_capture_spec.rb b/spec/features/idv/doc_auth/document_capture_spec.rb index 1b55ebcddf7..5bb0ca21b80 100644 --- a/spec/features/idv/doc_auth/document_capture_spec.rb +++ b/spec/features/idv/doc_auth/document_capture_spec.rb @@ -11,7 +11,7 @@ let(:sp_name) { 'Test SP' } before do allow_any_instance_of(ApplicationController).to receive(:analytics).and_return(fake_analytics) - allow_any_instance_of(ServiceProviderSessionDecorator).to receive(:sp_name).and_return(sp_name) + allow_any_instance_of(ServiceProviderSession).to receive(:sp_name).and_return(sp_name) visit_idp_from_oidc_sp_with_ial2 diff --git a/spec/features/idv/doc_auth/getting_started_spec.rb b/spec/features/idv/doc_auth/getting_started_spec.rb index 557fb13c200..e4f2918a450 100644 --- a/spec/features/idv/doc_auth/getting_started_spec.rb +++ b/spec/features/idv/doc_auth/getting_started_spec.rb @@ -9,7 +9,7 @@ before do allow_any_instance_of(ApplicationController).to receive(:analytics).and_return(fake_analytics) - allow_any_instance_of(ServiceProviderSessionDecorator).to receive(:sp_name).and_return(sp_name) + allow_any_instance_of(ServiceProviderSession).to receive(:sp_name).and_return(sp_name) stub_const('AbTests::IDV_GETTING_STARTED', FakeAbTestBucket.new) AbTests::IDV_GETTING_STARTED.assign_all(:getting_started) diff --git a/spec/features/idv/doc_auth/welcome_spec.rb b/spec/features/idv/doc_auth/welcome_spec.rb index 42334e19a77..23ca9a7629b 100644 --- a/spec/features/idv/doc_auth/welcome_spec.rb +++ b/spec/features/idv/doc_auth/welcome_spec.rb @@ -9,7 +9,7 @@ before do allow_any_instance_of(ApplicationController).to receive(:analytics).and_return(fake_analytics) - allow_any_instance_of(ServiceProviderSessionDecorator).to receive(:sp_name).and_return(sp_name) + allow_any_instance_of(ServiceProviderSession).to receive(:sp_name).and_return(sp_name) visit_idp_from_sp_with_ial2(:oidc) sign_in_and_2fa_user diff --git a/spec/views/devise/passwords/new.html.erb_spec.rb b/spec/views/devise/passwords/new.html.erb_spec.rb index 678d837c097..8a9241e971b 100644 --- a/spec/views/devise/passwords/new.html.erb_spec.rb +++ b/spec/views/devise/passwords/new.html.erb_spec.rb @@ -18,13 +18,13 @@ allow_any_instance_of(ActionController::TestRequest).to receive(:path). and_return('/users/password/new') - @decorated_session = DecoratedSession.new( + @decorated_sp_session = ServiceProviderSessionCreator.new( sp: sp, view_context: view_context, sp_session: {}, service_provider_request: ServiceProviderRequestProxy.new, - ).call - allow(view).to receive(:decorated_session).and_return(@decorated_session) + ).create_session + allow(view).to receive(:decorated_sp_session).and_return(@decorated_sp_session) end it 'has a localized title' do @@ -51,10 +51,10 @@ expect(rendered).to have_xpath("//input[@autocorrect='off']") end - it 'has a cancel link that points to the decorated_session cancel_link_url' do + it 'has a cancel link that points to the decorated_sp_session cancel_link_url' do render - expect(rendered).to have_link(t('links.cancel'), href: @decorated_session.cancel_link_url) + expect(rendered).to have_link(t('links.cancel'), href: @decorated_sp_session.cancel_link_url) end it 'has sp alert for certain service providers' do diff --git a/spec/views/devise/sessions/new.html.erb_spec.rb b/spec/views/devise/sessions/new.html.erb_spec.rb index db81e0972b5..b85fdc8ee54 100644 --- a/spec/views/devise/sessions/new.html.erb_spec.rb +++ b/spec/views/devise/sessions/new.html.erb_spec.rb @@ -8,7 +8,7 @@ allow(view).to receive(:resource_name).and_return(:user) allow(view).to receive(:devise_mapping).and_return(Devise.mappings[:user]) allow(view).to receive(:controller_name).and_return('sessions') - allow(view).to receive(:decorated_session).and_return(SessionDecorator.new) + allow(view).to receive(:decorated_sp_session).and_return(NullServiceProviderSession.new) allow_any_instance_of(ActionController::TestRequest).to receive(:path). and_return('/') assign(:ial, 1) @@ -85,13 +85,13 @@ end before do view_context = ActionController::Base.new.view_context - @decorated_session = DecoratedSession.new( + @decorated_sp_session = ServiceProviderSessionCreator.new( sp: sp, view_context: view_context, sp_session: {}, service_provider_request: ServiceProviderRequest.new, - ).call - allow(view).to receive(:decorated_session).and_return(@decorated_session) + ).create_session + allow(view).to receive(:decorated_sp_session).and_return(@decorated_sp_session) allow(view_context).to receive(:sign_up_email_path). and_return('/sign_up/enter_email') end diff --git a/spec/views/idv/by_mail/letter_enqueued/show.html.erb_spec.rb b/spec/views/idv/by_mail/letter_enqueued/show.html.erb_spec.rb index bdac0574397..183a0b5e71d 100644 --- a/spec/views/idv/by_mail/letter_enqueued/show.html.erb_spec.rb +++ b/spec/views/idv/by_mail/letter_enqueued/show.html.erb_spec.rb @@ -5,9 +5,9 @@ let(:step_indicator_steps) { Idv::StepIndicatorConcern::STEP_INDICATOR_STEPS_GPO } before do - @decorated_session = instance_double(ServiceProviderSessionDecorator) - allow(@decorated_session).to receive(:sp_name).and_return(sp_name) - allow(view).to receive(:decorated_session).and_return(@decorated_session) + @decorated_sp_session = instance_double(ServiceProviderSession) + allow(@decorated_sp_session).to receive(:sp_name).and_return(sp_name) + allow(view).to receive(:decorated_sp_session).and_return(@decorated_sp_session) allow(view).to receive(:step_indicator_steps).and_return(step_indicator_steps) end @@ -26,7 +26,7 @@ strip_tags( t( 'idv.messages.come_back_later_sp_html', - sp: @decorated_session.sp_name, + sp: @decorated_sp_session.sp_name, ), ), ) diff --git a/spec/views/idv/getting_started/show.html.erb_spec.rb b/spec/views/idv/getting_started/show.html.erb_spec.rb index a93404df492..14b22b96648 100644 --- a/spec/views/idv/getting_started/show.html.erb_spec.rb +++ b/spec/views/idv/getting_started/show.html.erb_spec.rb @@ -6,11 +6,11 @@ let(:user) { create(:user) } before do - @decorated_session = instance_double(ServiceProviderSessionDecorator) + @decorated_sp_session = instance_double(ServiceProviderSession) @sp_name = 'Login.gov' @title = t('doc_auth.headings.getting_started', sp_name: @sp_name) - allow(@decorated_session).to receive(:sp_name).and_return(sp_name) - allow(view).to receive(:decorated_session).and_return(@decorated_session) + allow(@decorated_sp_session).to receive(:sp_name).and_return(sp_name) + allow(view).to receive(:decorated_sp_session).and_return(@decorated_sp_session) allow(view).to receive(:user_fully_authenticated?).and_return(user_fully_authenticated) allow(view).to receive(:user_signing_up?).and_return(false) allow(view).to receive(:url_for).and_wrap_original do |method, *args, &block| diff --git a/spec/views/idv/phone_errors/_warning.html.erb_spec.rb b/spec/views/idv/phone_errors/_warning.html.erb_spec.rb index bb5166330e0..70ff3c0b36e 100644 --- a/spec/views/idv/phone_errors/_warning.html.erb_spec.rb +++ b/spec/views/idv/phone_errors/_warning.html.erb_spec.rb @@ -6,8 +6,8 @@ let(:assigns) { {} } before do - decorated_session = instance_double(ServiceProviderSessionDecorator, sp_name: sp_name) - allow(view).to receive(:decorated_session).and_return(decorated_session) + decorated_sp_session = instance_double(ServiceProviderSession, sp_name: sp_name) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) render('idv/phone_errors/warning', assigns) { text } end diff --git a/spec/views/idv/phone_errors/failure.html.erb_spec.rb b/spec/views/idv/phone_errors/failure.html.erb_spec.rb index c1beaa6a718..1e9820a57e0 100644 --- a/spec/views/idv/phone_errors/failure.html.erb_spec.rb +++ b/spec/views/idv/phone_errors/failure.html.erb_spec.rb @@ -10,8 +10,8 @@ end before do - decorated_session = instance_double(ServiceProviderSessionDecorator, sp_name: sp_name) - allow(view).to receive(:decorated_session).and_return(decorated_session) + decorated_sp_session = instance_double(ServiceProviderSession, sp_name: sp_name) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) assign(:gpo_letter_available, gpo_letter_available) allow(IdentityConfig.store).to receive(:idv_attempt_window_in_hours).and_return(timeout_hours) diff --git a/spec/views/idv/phone_errors/jobfail.html.erb_spec.rb b/spec/views/idv/phone_errors/jobfail.html.erb_spec.rb index 4341e6c3102..4a042c382f7 100644 --- a/spec/views/idv/phone_errors/jobfail.html.erb_spec.rb +++ b/spec/views/idv/phone_errors/jobfail.html.erb_spec.rb @@ -5,8 +5,8 @@ let(:gpo_letter_available) { false } before do - decorated_session = instance_double(ServiceProviderSessionDecorator, sp_name: sp_name) - allow(view).to receive(:decorated_session).and_return(decorated_session) + decorated_sp_session = instance_double(ServiceProviderSession, sp_name: sp_name) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) assign(:gpo_letter_available, gpo_letter_available) render diff --git a/spec/views/idv/phone_errors/timeout.html.erb_spec.rb b/spec/views/idv/phone_errors/timeout.html.erb_spec.rb index f34f5fb7668..c17eea3c4f3 100644 --- a/spec/views/idv/phone_errors/timeout.html.erb_spec.rb +++ b/spec/views/idv/phone_errors/timeout.html.erb_spec.rb @@ -5,8 +5,8 @@ let(:gpo_letter_available) { false } before do - decorated_session = instance_double(ServiceProviderSessionDecorator, sp_name: sp_name) - allow(view).to receive(:decorated_session).and_return(decorated_session) + decorated_sp_session = instance_double(ServiceProviderSession, sp_name: sp_name) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) assign(:gpo_letter_available, gpo_letter_available) render diff --git a/spec/views/idv/phone_errors/warning.html.erb_spec.rb b/spec/views/idv/phone_errors/warning.html.erb_spec.rb index e8587aac8ba..ca1f7720017 100644 --- a/spec/views/idv/phone_errors/warning.html.erb_spec.rb +++ b/spec/views/idv/phone_errors/warning.html.erb_spec.rb @@ -11,8 +11,8 @@ let(:formatted_phone) { '+1 360-234-5678' } before do - decorated_session = instance_double(ServiceProviderSessionDecorator, sp_name: sp_name) - allow(view).to receive(:decorated_session).and_return(decorated_session) + decorated_sp_session = instance_double(ServiceProviderSession, sp_name: sp_name) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) assign(:gpo_letter_available, gpo_letter_available) assign(:remaining_attempts, remaining_attempts) assign(:country_code, country_code) diff --git a/spec/views/idv/session_errors/exception.html.erb_spec.rb b/spec/views/idv/session_errors/exception.html.erb_spec.rb index 91f903a182c..a10bd49ed4c 100644 --- a/spec/views/idv/session_errors/exception.html.erb_spec.rb +++ b/spec/views/idv/session_errors/exception.html.erb_spec.rb @@ -6,12 +6,12 @@ let(:try_again_path) { '/example/path' } before do - decorated_session = instance_double( - ServiceProviderSessionDecorator, + decorated_sp_session = instance_double( + ServiceProviderSession, sp_name: sp_name, sp_issuer: sp_issuer, ) - allow(view).to receive(:decorated_session).and_return(decorated_session) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) assign(:try_again_path, try_again_path) diff --git a/spec/views/idv/session_errors/rate_limited.html.erb_spec.rb b/spec/views/idv/session_errors/rate_limited.html.erb_spec.rb index 93505d6bde6..b589e11e2d3 100644 --- a/spec/views/idv/session_errors/rate_limited.html.erb_spec.rb +++ b/spec/views/idv/session_errors/rate_limited.html.erb_spec.rb @@ -5,12 +5,12 @@ let(:sp_issuer) { nil } before do - decorated_session = instance_double( - ServiceProviderSessionDecorator, + decorated_sp_session = instance_double( + ServiceProviderSession, sp_name: sp_name, sp_issuer: sp_issuer, ) - allow(view).to receive(:decorated_session).and_return(decorated_session) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) render end diff --git a/spec/views/idv/session_errors/warning.html.erb_spec.rb b/spec/views/idv/session_errors/warning.html.erb_spec.rb index 9485637d139..4d71bea1317 100644 --- a/spec/views/idv/session_errors/warning.html.erb_spec.rb +++ b/spec/views/idv/session_errors/warning.html.erb_spec.rb @@ -7,8 +7,8 @@ let(:user_session) { {} } before do - decorated_session = instance_double(ServiceProviderSessionDecorator, sp_name: sp_name) - allow(view).to receive(:decorated_session).and_return(decorated_session) + decorated_sp_session = instance_double(ServiceProviderSession, sp_name: sp_name) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) allow(view).to receive(:user_session).and_return(user_session) assign(:remaining_attempts, remaining_attempts) diff --git a/spec/views/idv/shared/_document_capture.html.erb_spec.rb b/spec/views/idv/shared/_document_capture.html.erb_spec.rb index b16c51a8f85..2927bccf663 100644 --- a/spec/views/idv/shared/_document_capture.html.erb_spec.rb +++ b/spec/views/idv/shared/_document_capture.html.erb_spec.rb @@ -15,12 +15,12 @@ let(:acuant_version) { '1.3.3.7' } before do - decorated_session = instance_double( - ServiceProviderSessionDecorator, + decorated_sp_session = instance_double( + ServiceProviderSession, sp_name: sp_name, sp_issuer: sp_issuer, ) - allow(view).to receive(:decorated_session).and_return(decorated_session) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) allow(view).to receive(:url_for).and_return('https://example.com/') allow(Idv::InPersonConfig).to receive(:enabled_for_issuer?) do |issuer| diff --git a/spec/views/idv/shared/_error.html.erb_spec.rb b/spec/views/idv/shared/_error.html.erb_spec.rb index 763ff89e24a..a79ef410da8 100644 --- a/spec/views/idv/shared/_error.html.erb_spec.rb +++ b/spec/views/idv/shared/_error.html.erb_spec.rb @@ -21,8 +21,8 @@ end before do - decorated_session = instance_double(ServiceProviderSessionDecorator, sp_name: sp_name) - allow(view).to receive(:decorated_session).and_return(decorated_session) + decorated_sp_session = instance_double(ServiceProviderSession, sp_name: sp_name) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) if step_indicator_steps allow(view).to receive(:step_indicator_steps).and_return(step_indicator_steps) diff --git a/spec/views/idv/unavailable/show.html.erb_spec.rb b/spec/views/idv/unavailable/show.html.erb_spec.rb index 182fdd1ab20..bcc19508635 100644 --- a/spec/views/idv/unavailable/show.html.erb_spec.rb +++ b/spec/views/idv/unavailable/show.html.erb_spec.rb @@ -5,8 +5,8 @@ subject(:rendered) { render } before do - allow(view).to receive(:decorated_session).and_return( - instance_double(ServiceProviderSessionDecorator, sp_name: sp_name), + allow(view).to receive(:decorated_sp_session).and_return( + instance_double(ServiceProviderSession, sp_name: sp_name), ) end diff --git a/spec/views/idv/welcome/show.html.erb_spec.rb b/spec/views/idv/welcome/show.html.erb_spec.rb index 550c43ffe75..b9ab6b0aab2 100644 --- a/spec/views/idv/welcome/show.html.erb_spec.rb +++ b/spec/views/idv/welcome/show.html.erb_spec.rb @@ -7,9 +7,9 @@ let(:user) { create(:user) } before do - @decorated_session = instance_double(ServiceProviderSessionDecorator) - allow(@decorated_session).to receive(:sp_name).and_return(sp_name) - allow(view).to receive(:decorated_session).and_return(@decorated_session) + @decorated_sp_session = instance_double(ServiceProviderSession) + allow(@decorated_sp_session).to receive(:sp_name).and_return(sp_name) + allow(view).to receive(:decorated_sp_session).and_return(@decorated_sp_session) allow(view).to receive(:flow_session).and_return(flow_session) allow(view).to receive(:user_fully_authenticated?).and_return(user_fully_authenticated) allow(view).to receive(:user_signing_up?).and_return(false) diff --git a/spec/views/layouts/application.html.erb_spec.rb b/spec/views/layouts/application.html.erb_spec.rb index cb25c4db0e5..f82c57656ff 100644 --- a/spec/views/layouts/application.html.erb_spec.rb +++ b/spec/views/layouts/application.html.erb_spec.rb @@ -5,13 +5,13 @@ before do allow(view).to receive(:user_fully_authenticated?).and_return(true) - allow(view).to receive(:decorated_session).and_return( - DecoratedSession.new( + allow(view).to receive(:decorated_sp_session).and_return( + ServiceProviderSessionCreator.new( sp: nil, view_context: nil, sp_session: {}, service_provider_request: ServiceProviderRequestProxy.new, - ).call, + ).create_session, ) allow(view.request).to receive(:original_fullpath).and_return('/foobar') allow(view).to receive(:current_user).and_return(User.new) @@ -101,7 +101,7 @@ it 'renders a javascript page refresh' do allow(view).to receive(:user_fully_authenticated?).and_return(false) allow(view).to receive(:current_user).and_return(false) - allow(view).to receive(:decorated_session).and_return(SessionDecorator.new) + allow(view).to receive(:decorated_sp_session).and_return(NullServiceProviderSession.new) render expect(view).to render_template(partial: 'session_timeout/_expire_session') @@ -123,13 +123,13 @@ allow(view).to receive(:current_user).and_return(nil) allow(view).to receive(:page_with_trust?).and_return(false) allow(view).to receive(:user_fully_authenticated?).and_return(false) - allow(view).to receive(:decorated_session).and_return( - DecoratedSession.new( + allow(view).to receive(:decorated_sp_session).and_return( + ServiceProviderSessionCreator.new( sp: nil, view_context: nil, sp_session: {}, service_provider_request: nil, - ).call, + ).create_session, ) allow(IdentityConfig.store).to receive(:participate_in_dap).and_return(true) @@ -152,7 +152,7 @@ context 'current_user is present but is not fully authenticated' do before do allow(view).to receive(:user_fully_authenticated?).and_return(false) - allow(view).to receive(:decorated_session).and_return(SessionDecorator.new) + allow(view).to receive(:decorated_sp_session).and_return(NullServiceProviderSession.new) end it 'does not render the DAP analytics' do diff --git a/spec/views/shared/_banner.html.erb_spec.rb b/spec/views/shared/_banner.html.erb_spec.rb index a78a7ddde8a..1c7d5cf819a 100644 --- a/spec/views/shared/_banner.html.erb_spec.rb +++ b/spec/views/shared/_banner.html.erb_spec.rb @@ -6,13 +6,13 @@ :service_provider, logo: 'generic.svg', friendly_name: 'Best SP ever' ) - decorated_session = ServiceProviderSessionDecorator.new( + decorated_sp_session = ServiceProviderSession.new( sp: sp_with_logo, view_context: '', sp_session: {}, service_provider_request: nil, ) - allow(view).to receive(:decorated_session).and_return(decorated_session) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) end it 'properly HTML escapes the secure notification' do diff --git a/spec/views/shared/_nav_branded.html.erb_spec.rb b/spec/views/shared/_nav_branded.html.erb_spec.rb index 2b223ee0fd8..dca15917aba 100644 --- a/spec/views/shared/_nav_branded.html.erb_spec.rb +++ b/spec/views/shared/_nav_branded.html.erb_spec.rb @@ -8,13 +8,13 @@ sp_with_logo = build_stubbed( :service_provider, logo: 'generic.svg', friendly_name: 'Best SP ever' ) - decorated_session = ServiceProviderSessionDecorator.new( + decorated_sp_session = ServiceProviderSession.new( sp: sp_with_logo, view_context: view_context, sp_session: {}, service_provider_request: nil, ) - allow(view).to receive(:decorated_session).and_return(decorated_session) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) render end @@ -39,13 +39,13 @@ before do allow(IdentityConfig.store).to receive(:aws_logo_bucket).and_return(bucket) allow(FeatureManagement).to receive(:logo_upload_enabled?).and_return(true) - decorated_session = ServiceProviderSessionDecorator.new( + decorated_sp_session = ServiceProviderSession.new( sp: sp_with_s3_logo, view_context: view_context, sp_session: {}, service_provider_request: nil, ) - allow(view).to receive(:decorated_session).and_return(decorated_session) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) render end @@ -58,13 +58,13 @@ context 'without a SP-logo configured' do before do sp_without_logo = build_stubbed(:service_provider, friendly_name: 'No logo no problem') - decorated_session = ServiceProviderSessionDecorator.new( + decorated_sp_session = ServiceProviderSession.new( sp: sp_without_logo, view_context: view_context, sp_session: {}, service_provider_request: nil, ) - allow(view).to receive(:decorated_session).and_return(decorated_session) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) render end @@ -76,13 +76,13 @@ context 'service provider has a poorly configured logo' do before do sp = build_stubbed(:service_provider, logo: 'abc') - decorated_session = ServiceProviderSessionDecorator.new( + decorated_sp_session = ServiceProviderSession.new( sp:, view_context:, sp_session: {}, service_provider_request: nil, ) - allow(view).to receive(:decorated_session).and_return(decorated_session) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) end it 'does not raise an exception' do diff --git a/spec/views/sign_up/completions/show.html.erb_spec.rb b/spec/views/sign_up/completions/show.html.erb_spec.rb index 66e4e30bd35..6e5d66d3fcb 100644 --- a/spec/views/sign_up/completions/show.html.erb_spec.rb +++ b/spec/views/sign_up/completions/show.html.erb_spec.rb @@ -9,8 +9,8 @@ let(:completion_context) { :new_sp } let(:view_context) { ActionController::Base.new.view_context } - let(:decorated_session) do - ServiceProviderSessionDecorator.new( + let(:decorated_sp_session) do + ServiceProviderSession.new( sp: service_provider, view_context: view_context, sp_session: {}, @@ -32,7 +32,7 @@ before do @user = user @presenter = presenter - allow(view).to receive(:decorated_session).and_return(decorated_session) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) end it 'shows the app name, not the agency name' do diff --git a/spec/views/sign_up/registrations/new.html.erb_spec.rb b/spec/views/sign_up/registrations/new.html.erb_spec.rb index 8927e106967..08e4dc37cc2 100644 --- a/spec/views/sign_up/registrations/new.html.erb_spec.rb +++ b/spec/views/sign_up/registrations/new.html.erb_spec.rb @@ -23,13 +23,13 @@ allow_any_instance_of(ActionView::Base).to receive(:request_id). and_return(nil) - @decorated_session = DecoratedSession.new( + @decorated_sp_session = ServiceProviderSessionCreator.new( sp: sp, view_context: view_context, sp_session: {}, service_provider_request: ServiceProviderRequestProxy.new, - ).call - allow(view).to receive(:decorated_session).and_return(@decorated_session) + ).create_session + allow(view).to receive(:decorated_sp_session).and_return(@decorated_sp_session) end it 'has a localized title' do @@ -65,10 +65,10 @@ expect(rendered).to have_xpath("//input[@autocorrect='off']") end - it 'has a cancel link that points to the decorated_session cancel_link_url' do + it 'has a cancel link that points to the decorated_sp_session cancel_link_url' do render - expect(rendered).to have_link(t('links.cancel'), href: @decorated_session.cancel_link_url) + expect(rendered).to have_link(t('links.cancel'), href: @decorated_sp_session.cancel_link_url) end it 'includes a link to security / privacy page and privacy statement act' do diff --git a/spec/views/users/second_mfa_reminder/new.html.erb_spec.rb b/spec/views/users/second_mfa_reminder/new.html.erb_spec.rb index e05588af401..1fd096d59f8 100644 --- a/spec/views/users/second_mfa_reminder/new.html.erb_spec.rb +++ b/spec/views/users/second_mfa_reminder/new.html.erb_spec.rb @@ -6,9 +6,9 @@ let(:sp_name) {} before do - decorated_session = double - allow(decorated_session).to receive(:sp_name).and_return(sp_name) - allow(view).to receive(:decorated_session).and_return(decorated_session) + decorated_sp_session = double + allow(decorated_sp_session).to receive(:sp_name).and_return(sp_name) + allow(view).to receive(:decorated_sp_session).and_return(decorated_sp_session) end it 'renders with fallback app name for continue button' do