Browse Source

Update routing for previous postcode

pull/2207/head
Kat 2 years ago
parent
commit
1c77cb1d1c
  1. 6
      app/models/form/sales/pages/last_accommodation.rb
  2. 33
      spec/models/form/sales/pages/last_accommodation_spec.rb

6
app/models/form/sales/pages/last_accommodation.rb

@ -10,4 +10,10 @@ class Form::Sales::Pages::LastAccommodation < ::Form::Page
Form::Sales::Questions::PreviousPostcode.new(nil, nil, self), Form::Sales::Questions::PreviousPostcode.new(nil, nil, self),
] ]
end end
def routed_to?(log, _user)
return false if log.form.start_year_after_2024? && log.discounted_ownership_sale?
super
end
end end

33
spec/models/form/sales/pages/last_accommodation_spec.rb

@ -3,10 +3,24 @@ require "rails_helper"
RSpec.describe Form::Sales::Pages::LastAccommodation, type: :model do RSpec.describe Form::Sales::Pages::LastAccommodation, type: :model do
subject(:page) { described_class.new(page_id, page_definition, subsection) } subject(:page) { described_class.new(page_id, page_definition, subsection) }
let(:log) { create(:sales_log, :completed, saledate: now) }
let(:now) { Time.zone.local(2023, 4, 4) }
let(:page_id) { nil } let(:page_id) { nil }
let(:page_definition) { nil } let(:page_definition) { nil }
let(:subsection) { instance_double(Form::Subsection) } let(:subsection) { instance_double(Form::Subsection) }
before do
Timecop.freeze(now)
Singleton.__init__(FormHandler)
allow(subsection).to receive(:depends_on).and_return(nil)
end
after do
Timecop.return
Singleton.__init__(FormHandler)
end
it "has correct subsection" do it "has correct subsection" do
expect(page.subsection).to eq(subsection) expect(page.subsection).to eq(subsection)
end end
@ -30,4 +44,23 @@ RSpec.describe Form::Sales::Pages::LastAccommodation, type: :model do
it "has correct depends_on" do it "has correct depends_on" do
expect(page.depends_on).to be_nil expect(page.depends_on).to be_nil
end end
it "is routed to" do
log.ownershipsch = 2
expect(page).to be_routed_to(log, nil)
end
context "with 2024 form" do
let(:now) { Time.zone.local(2024, 4, 4) }
it "is routed to for 2024 non discounted sale logs" do
log.update!(ownershipsch: 1)
expect(page).to be_routed_to(log, nil)
end
it "is not routed to for 2024 discounted sale logs" do
log.update!(ownershipsch: 2)
expect(page).not_to be_routed_to(log, nil)
end
end
end end

Loading…
Cancel
Save