Browse Source

Update action_href to be reusable

pull/1584/head
Kat 3 years ago
parent
commit
0ea484dd1d
  1. 4
      app/components/check_answers_summary_list_card_component.rb
  2. 4
      app/helpers/form_page_helper.rb
  3. 4
      app/helpers/interruption_screen_helper.rb
  4. 2
      app/views/form/_interruption_screen_question.html.erb
  5. 4
      spec/helpers/form_page_helper_spec.rb
  6. 6
      spec/helpers/interruption_screen_helper_spec.rb

4
app/components/check_answers_summary_list_card_component.rb

@ -28,8 +28,8 @@ class CheckAnswersSummaryListCardComponent < ViewComponent::Base
"Person #{question.check_answers_card_number}"
end
def action_href(log, page_id)
send("#{log.model_name.param_key}_#{page_id}_path", log, referrer: "check_answers")
def action_href(log, page_id, referrer = "check_answers")
send("#{log.model_name.param_key}_#{page_id}_path", log, referrer:)
end
private

4
app/helpers/form_page_helper.rb

@ -1,5 +1,5 @@
module FormPageHelper
def action_href(log, page_id)
send("#{log.model_name.param_key}_#{page_id}_path", log, referrer: "check_answers")
def action_href(log, page_id, referrer = "check_answers")
send("#{log.model_name.param_key}_#{page_id}_path", log, referrer:)
end
end

4
app/helpers/interruption_screen_helper.rb

@ -33,10 +33,6 @@ module InterruptionScreenHelper
question.page.affected_question_ids.map { |question_id| log.form.get_question(question_id, log) }.compact
end
def interruption_action_href(log, page_id)
send("#{log.model_name.param_key}_#{page_id}_path", log, referrer: "interruption_screen")
end
private
def get_value_from_argument(log, argument)

2
app/views/form/_interruption_screen_question.html.erb

@ -31,7 +31,7 @@
<% if @log.collection_period_open? %>
<% row.action(
text: affected_question.action_text(@log),
href: interruption_action_href(@log, affected_question.page.id),
href: action_href(@log, affected_question.page.id, "interruption_screen"),
visually_hidden_text: affected_question.check_answer_label.to_s.downcase,
) %>
<% end %>

4
spec/helpers/form_page_helper_spec.rb

@ -8,5 +8,9 @@ RSpec.describe FormPageHelper do
lettings_log.id = 1
expect(action_href(lettings_log, "net_income")).to eq("/lettings-logs/1/net-income?referrer=check_answers")
end
it "returns a correct referrer in the url" do
expect(action_href(lettings_log, "retirement_value_check"), referrer: "interruption_screen").to eq("/lettings-logs/#{lettings_log.id}/retirement-value-check?referrer=interruption_screen")
end
end
end

6
spec/helpers/interruption_screen_helper_spec.rb

@ -250,10 +250,4 @@ RSpec.describe InterruptionScreenHelper do
expect(soft_validation_affected_questions(question, lettings_log).map(&:id)).to eq(%w[age1 ecstat1])
end
end
describe "interruption_action_href" do
it "returns a path to given question with interruption screen referrer" do
expect(interruption_action_href(lettings_log, "retirement_value_check")).to eq("/lettings-logs/#{lettings_log.id}/retirement-value-check?referrer=interruption_screen")
end
end
end

Loading…
Cancel
Save