12 changed files with 406 additions and 0 deletions
			
			
		@ -0,0 +1,31 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Pages::MonthlyRentStaircasingOwned, type: :model do | 
				
			||||||
 | 
					  subject(:page) { described_class.new(page_id, page_definition, subsection) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:page_id) { nil } | 
				
			||||||
 | 
					  let(:page_definition) { nil } | 
				
			||||||
 | 
					  let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 1))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct subsection" do | 
				
			||||||
 | 
					    expect(page.subsection).to eq(subsection) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct questions" do | 
				
			||||||
 | 
					    expect(page.questions.map(&:id)).to eq(%w[mrentprestaircasing]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(page.id).to eq("monthly_rent_staircasing_owned") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct description" do | 
				
			||||||
 | 
					    expect(page.description).to be_nil | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct depends_on" do | 
				
			||||||
 | 
					    expect(page.depends_on).to eq([ | 
				
			||||||
 | 
					      { "stairowned_100?" => true }, | 
				
			||||||
 | 
					    ]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,31 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Pages::MonthlyRentStaircasing, type: :model do | 
				
			||||||
 | 
					  subject(:page) { described_class.new(page_id, page_definition, subsection) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:page_id) { nil } | 
				
			||||||
 | 
					  let(:page_definition) { nil } | 
				
			||||||
 | 
					  let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 1))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct subsection" do | 
				
			||||||
 | 
					    expect(page.subsection).to eq(subsection) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct questions" do | 
				
			||||||
 | 
					    expect(page.questions.map(&:id)).to eq(%w[mrentprestaircasing mrent]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(page.id).to eq("monthly_rent_staircasing") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct description" do | 
				
			||||||
 | 
					    expect(page.description).to be_nil | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct depends_on" do | 
				
			||||||
 | 
					    expect(page.depends_on).to eq([ | 
				
			||||||
 | 
					      { "stairowned_100?" => false }, | 
				
			||||||
 | 
					    ]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,31 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Pages::StaircaseFirstTime, type: :model do | 
				
			||||||
 | 
					  subject(:page) { described_class.new(page_id, page_definition, subsection) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:page_id) { nil } | 
				
			||||||
 | 
					  let(:page_definition) { nil } | 
				
			||||||
 | 
					  let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 1))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct subsection" do | 
				
			||||||
 | 
					    expect(page.subsection).to eq(subsection) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct questions" do | 
				
			||||||
 | 
					    expect(page.questions.map(&:id)).to eq(%w[firststair]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(page.id).to eq("staircase_first_time") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct description" do | 
				
			||||||
 | 
					    expect(page.description).to be_nil | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct depends_on" do | 
				
			||||||
 | 
					    expect(page.depends_on).to eq([ | 
				
			||||||
 | 
					      { "staircase" => 1 }, | 
				
			||||||
 | 
					    ]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,31 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Pages::StaircaseInitialDate, type: :model do | 
				
			||||||
 | 
					  subject(:page) { described_class.new(page_id, page_definition, subsection) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:page_id) { nil } | 
				
			||||||
 | 
					  let(:page_definition) { nil } | 
				
			||||||
 | 
					  let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 1))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct subsection" do | 
				
			||||||
 | 
					    expect(page.subsection).to eq(subsection) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct questions" do | 
				
			||||||
 | 
					    expect(page.questions.map(&:id)).to eq(%w[initialpurchase]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(page.id).to eq("staircase_initial_date") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct description" do | 
				
			||||||
 | 
					    expect(page.description).to be_nil | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct depends_on" do | 
				
			||||||
 | 
					    expect(page.depends_on).to eq([ | 
				
			||||||
 | 
					      { "is_firststair?" => true }, | 
				
			||||||
 | 
					    ]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,31 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Pages::StaircasePrevious, type: :model do | 
				
			||||||
 | 
					  subject(:page) { described_class.new(page_id, page_definition, subsection) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:page_id) { nil } | 
				
			||||||
 | 
					  let(:page_definition) { nil } | 
				
			||||||
 | 
					  let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 1))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct subsection" do | 
				
			||||||
 | 
					    expect(page.subsection).to eq(subsection) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct questions" do | 
				
			||||||
 | 
					    expect(page.questions.map(&:id)).to eq(%w[numstair lasttransaction initialpurchase]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(page.id).to eq("staircase_previous") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct description" do | 
				
			||||||
 | 
					    expect(page.description).to be_nil | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct depends_on" do | 
				
			||||||
 | 
					    expect(page.depends_on).to eq([ | 
				
			||||||
 | 
					      { "is_firststair?" => false }, | 
				
			||||||
 | 
					    ]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,38 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Pages::StaircaseSale, type: :model do | 
				
			||||||
 | 
					  subject(:page) { described_class.new(page_id, page_definition, subsection) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:page_id) { nil } | 
				
			||||||
 | 
					  let(:page_definition) { nil } | 
				
			||||||
 | 
					  let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 1))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  before do | 
				
			||||||
 | 
					    allow(subsection.form).to receive(:start_year_2025_or_later?).and_return(true) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct subsection" do | 
				
			||||||
 | 
					    expect(page.subsection).to eq(subsection) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct questions" do | 
				
			||||||
 | 
					    expect(page.questions.map(&:id)).to eq(%w[staircasesale]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(page.id).to eq("staircase_sale") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct description" do | 
				
			||||||
 | 
					    expect(page.description).to be_nil | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct depends_on" do | 
				
			||||||
 | 
					    expect(page.depends_on).to eq([ | 
				
			||||||
 | 
					      { | 
				
			||||||
 | 
					        "staircase" => 1, | 
				
			||||||
 | 
					        "stairowned" => 100, | 
				
			||||||
 | 
					      } | 
				
			||||||
 | 
					    ]) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,37 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Questions::MonthlyRentAfterStaircasing, type: :model do | 
				
			||||||
 | 
					  subject(:question) { described_class.new(question_id, question_definition, page) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:question_id) { nil } | 
				
			||||||
 | 
					  let(:question_definition) { nil } | 
				
			||||||
 | 
					  let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1)))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct page" do | 
				
			||||||
 | 
					    expect(question.page).to eq(page) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(question.id).to eq("mrent") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct type" do | 
				
			||||||
 | 
					    expect(question.type).to eq("numeric") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "is not marked as derived" do | 
				
			||||||
 | 
					    expect(question.derived?(nil)).to be false | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct width" do | 
				
			||||||
 | 
					    expect(question.width).to eq(5) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct prefix" do | 
				
			||||||
 | 
					    expect(question.prefix).to eq("£") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct min" do | 
				
			||||||
 | 
					    expect(question.min).to eq(0) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,37 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Questions::MonthlyRentBeforeStaircasing, type: :model do | 
				
			||||||
 | 
					  subject(:question) { described_class.new(question_id, question_definition, page) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:question_id) { nil } | 
				
			||||||
 | 
					  let(:question_definition) { nil } | 
				
			||||||
 | 
					  let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1)))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct page" do | 
				
			||||||
 | 
					    expect(question.page).to eq(page) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(question.id).to eq("mrentprestaircasing") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct type" do | 
				
			||||||
 | 
					    expect(question.type).to eq("numeric") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "is not marked as derived" do | 
				
			||||||
 | 
					    expect(question.derived?(nil)).to be false | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct width" do | 
				
			||||||
 | 
					    expect(question.width).to eq(5) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct prefix" do | 
				
			||||||
 | 
					    expect(question.prefix).to eq("£") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct min" do | 
				
			||||||
 | 
					    expect(question.min).to eq(0) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,33 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Questions::StaircaseCount, type: :model do | 
				
			||||||
 | 
					  subject(:question) { described_class.new(question_id, question_definition, page) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:question_id) { nil } | 
				
			||||||
 | 
					  let(:question_definition) { nil } | 
				
			||||||
 | 
					  let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 1)))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  before do | 
				
			||||||
 | 
					    allow(page.subsection.form).to receive(:start_year_2025_or_later?).and_return(true) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct page" do | 
				
			||||||
 | 
					    expect(question.page).to eq(page) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(question.id).to eq("numstair") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct type" do | 
				
			||||||
 | 
					    expect(question.type).to eq("numeric") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "is not marked as derived" do | 
				
			||||||
 | 
					    expect(question.derived?(nil)).to be false | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct conditional for" do | 
				
			||||||
 | 
					    expect(question.conditional_for).to eq(nil) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,40 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Questions::StaircaseFirstTime, type: :model do | 
				
			||||||
 | 
					  subject(:question) { described_class.new(question_id, question_definition, page) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:question_id) { nil } | 
				
			||||||
 | 
					  let(:question_definition) { nil } | 
				
			||||||
 | 
					  let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 1)))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  before do | 
				
			||||||
 | 
					    allow(page.subsection.form).to receive(:start_year_2025_or_later?).and_return(true) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct page" do | 
				
			||||||
 | 
					    expect(question.page).to eq(page) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(question.id).to eq("firststair") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct type" do | 
				
			||||||
 | 
					    expect(question.type).to eq("radio") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "is not marked as derived" do | 
				
			||||||
 | 
					    expect(question.derived?(nil)).to be false | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct answer_options" do | 
				
			||||||
 | 
					    expect(question.answer_options).to eq({ | 
				
			||||||
 | 
					      "1" => { "value" => "Yes" }, | 
				
			||||||
 | 
					      "2" => { "value" => "No" }, | 
				
			||||||
 | 
					    }) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct conditional for" do | 
				
			||||||
 | 
					    expect(question.conditional_for).to eq(nil) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,33 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Questions::StaircaseInitialDate, type: :model do | 
				
			||||||
 | 
					  subject(:question) { described_class.new(question_id, question_definition, page) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:question_id) { nil } | 
				
			||||||
 | 
					  let(:question_definition) { nil } | 
				
			||||||
 | 
					  let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 1)))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  before do | 
				
			||||||
 | 
					    allow(page.subsection.form).to receive(:start_year_2025_or_later?).and_return(true) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct page" do | 
				
			||||||
 | 
					    expect(question.page).to eq(page) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(question.id).to eq("initialpurchase") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct type" do | 
				
			||||||
 | 
					    expect(question.type).to eq("date") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "is not marked as derived" do | 
				
			||||||
 | 
					    expect(question.derived?(nil)).to be false | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct conditional for" do | 
				
			||||||
 | 
					    expect(question.conditional_for).to eq(nil) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,33 @@ | 
				
			|||||||
 | 
					require "rails_helper" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RSpec.describe Form::Sales::Questions::StaircaseInitialDate, type: :model do | 
				
			||||||
 | 
					  subject(:question) { described_class.new(question_id, question_definition, page) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  let(:question_id) { nil } | 
				
			||||||
 | 
					  let(:question_definition) { nil } | 
				
			||||||
 | 
					  let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 1)))) } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  before do | 
				
			||||||
 | 
					    allow(page.subsection.form).to receive(:start_year_2025_or_later?).and_return(true) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct page" do | 
				
			||||||
 | 
					    expect(question.page).to eq(page) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct id" do | 
				
			||||||
 | 
					    expect(question.id).to eq("lasttransaction") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has the correct type" do | 
				
			||||||
 | 
					    expect(question.type).to eq("date") | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "is not marked as derived" do | 
				
			||||||
 | 
					    expect(question.derived?(nil)).to be false | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it "has correct conditional for" do | 
				
			||||||
 | 
					    expect(question.conditional_for).to eq(nil) | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
					Loading…
					
					
				
		Reference in new issue