diff --git a/app/models/form.rb b/app/models/form.rb index 9d9acf2ea..3211a95dc 100644 --- a/app/models/form.rb +++ b/app/models/form.rb @@ -72,11 +72,24 @@ class Form end def next_page_redirect_path(page, log, current_user) - nxt_page = next_page(page, log, current_user) - if nxt_page == :check_answers - "#{type}_log_#{subsection_for_page(page).id}_check_answers_path" + if log.impacted_by_deactivation + case page.id + when "tenancy_start_date" + "lettings_log_scheme_path" + when "scheme" + "lettings_log_location_path" + when "location" + "#{type}_log_#{subsection_for_page(page).id}_check_answers_path" + else + "lettings_log_tenancy_start_date_path" + end else - "#{type}_log_#{nxt_page}_path" + nxt_page = next_page(page, log, current_user) + if nxt_page == :check_answers + "#{type}_log_#{subsection_for_page(page).id}_check_answers_path" + else + "#{type}_log_#{nxt_page}_path" + end end end diff --git a/spec/requests/lettings_logs_controller_spec.rb b/spec/requests/lettings_logs_controller_spec.rb index f5ed9f773..834b93bd9 100644 --- a/spec/requests/lettings_logs_controller_spec.rb +++ b/spec/requests/lettings_logs_controller_spec.rb @@ -831,7 +831,7 @@ RSpec.describe LettingsLogsController, type: :request do end context "when viewing a specific log affected by deactivated location" do - let!(:affected_lettings_log) { FactoryBot.create(:lettings_log, impacted_by_deactivation: true, created_by: user) } + let!(:affected_lettings_log) { FactoryBot.create(:lettings_log, impacted_by_deactivation: true, created_by: user, needstype: 2) } let(:headers) { { "Accept" => "text/html" } } before do @@ -845,6 +845,16 @@ RSpec.describe LettingsLogsController, type: :request do follow_redirect! expect(page).to have_content("What is the tenancy start date?") end + + it "tenancy start date page links to the scheme page" do + get "/lettings-logs/#{affected_lettings_log.id}/tenancy-start-date", headers:, params: {} + expect(page).to have_link("Skip for now", href: "/lettings-logs/#{affected_lettings_log.id}/scheme") + end + + it "scheme page links to the locations page" do + get "/lettings-logs/#{affected_lettings_log.id}/scheme", headers:, params: {} + expect(page).to have_link("Skip for now", href: "/lettings-logs/#{affected_lettings_log.id}/location") + end end end