require " rails_helper "
RSpec . describe Form :: Sales :: Questions :: Buyer1Income , 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 ( " income1 " )
end
it " has the correct header " do
expect ( question . header ) . to eq ( " Buyer 1’s gross annual income " )
end
it " has the correct check_answer_label " do
expect ( question . check_answer_label ) . to eq ( " Buyer 1’s gross annual income " )
end
it " has the correct type " do
expect ( question . type ) . to eq ( " numeric " )
end
it " is not marked as derived " do
expect ( question . derived? ) . to be false
end
it " has the correct hint " do
expect ( question . hint_text ) . to eq ( " Provide the gross annual income (i.e. salary before tax) plus the annual amount of benefits, Universal Credit or pensions, and income from investments. " )
end
it " has correct width " do
expect ( question . width ) . to eq ( 5 )
end
it " has correct step " do
expect ( question . step ) . to eq ( 1 )
end
it " has correct prefix " do
expect ( question . prefix ) . to eq ( " £ " )
end
it " has correct min " do
expect ( question . min ) . to eq ( 0 )
end
it " has the correct check_answers_card_number " do
expect ( question . check_answers_card_number ) . to eq ( 1 )
end
it " has correct max " do
expect ( question . max ) . to eq ( 999_999 )
end
end