require "rails_helper" RSpec.describe Form::Lettings::Questions::Wheelchair, type: :model do subject(:question) { described_class.new(nil, nil, page) } let(:page) { instance_double(Form::Page) } let(:subsection) { instance_double(Form::Subsection) } before do allow(page).to receive(:subsection).and_return(subsection) allow(subsection).to receive(:form).and_return(instance_double(Form, start_year_after_2024?: false, start_date: Time.zone.local(2023, 4, 1))) end it "has correct page" do expect(question.page).to eq(page) end it "has the correct id" do expect(question.id).to eq("wchair") end it "has the correct header" do expect(question.header).to eq("Is the property built or adapted to wheelchair-user standards?") end it "has the correct check_answer_label" do expect(question.check_answer_label).to eq("Property built or adapted to wheelchair-user standards") end it "has the correct type" do expect(question.type).to eq("radio") end it "has the correct hint_text" do expect(question.hint_text).to eq "" end it "has the correct answer_options" do expect(question.answer_options).to eq({ "1" => { "value" => "Yes" }, "2" => { "value" => "No" }, }) end it "is not marked as derived" do expect(question.derived?).to be false end context "with 2024 form" do before do allow(subsection).to receive(:form).and_return(instance_double(Form, start_year_after_2024?: true, start_date: Time.zone.local(2024, 4, 1))) end it "has the correct hint_text" do expect(question.hint_text).to eq "This is whether someone who uses a wheelchair is able to make full use of all of the property’s rooms and facilities, including use of both inside and outside space, and entering and exiting the property." end end end