@ -6,7 +6,8 @@ RSpec.describe Form::Sales::Questions::BuyerInterview, type: :model do
let ( :question_id ) { nil }
let ( :question_definition ) { nil }
let ( :form ) { instance_double ( Form , start_date : Time . zone . local ( 2023 , 4 , 1 ) , start_year_2024_or_later? : true ) }
let ( :page ) { instance_double ( Form :: Page , subsection : instance_double ( Form :: Subsection , form : , id : " setup " ) ) }
let ( :subsection ) { instance_double ( Form :: Subsection , form : , copy_key : " setup " ) }
let ( :page ) { instance_double ( Form :: Page , subsection : ) }
it " has correct page " do
expect ( question . page ) . to eq ( page )
@ -34,42 +35,20 @@ RSpec.describe Form::Sales::Questions::BuyerInterview, type: :model do
context " when there are joint buyers " do
subject ( :question ) { described_class . new ( question_id , question_definition , page , joint_purchase : true ) }
context " when the form start year is before 2024 " do
let ( :page ) { instance_double ( Form :: Page , subsection : instance_double ( Form :: Subsection , form : , id : " household_characteristics " ) ) }
let ( :form ) { instance_double ( Form , start_date : Time . zone . local ( 2024 , 3 , 1 ) , start_year_2024_or_later? : false ) }
let ( :subsection ) { instance_double ( Form :: Subsection , form : , copy_key : " subsection_copy_key " ) }
it " has the expected copy_key " do
expect ( question . copy_key ) . to eq ( " sales.household_characteristics.noint.joint_purchase " )
end
end
context " when the form start year is after 2024 " do
let ( :form ) { instance_double ( Form , start_date : Time . zone . local ( 2024 , 4 , 1 ) , start_year_2024_or_later? : true ) }
it " has the expected copy_key " do
expect ( question . copy_key ) . to eq ( " sales.setup.noint.joint_purchase " )
end
it " has the expected copy_key " do
expect ( question . copy_key ) . to eq ( " sales.subsection_copy_key.noint.joint_purchase " )
end
end
context " when there is a single buyer " do
subject ( :question ) { described_class . new ( question_id , question_definition , page , joint_purchase : false ) }
context " when the form start year is before 2024 " do
let ( :page ) { instance_double ( Form :: Page , subsection : instance_double ( Form :: Subsection , form : , id : " household_characteristics " ) ) }
let ( :form ) { instance_double ( Form , start_date : Time . zone . local ( 2023 , 4 , 1 ) , start_year_2024_or_later? : false ) }
it " has the expected copy_key " do
expect ( question . copy_key ) . to eq ( " sales.household_characteristics.noint.not_joint_purchase " )
end
end
context " when the form start year is after 2024 " do
let ( :form ) { instance_double ( Form , start_date : Time . zone . local ( 2024 , 4 , 1 ) , start_year_2024_or_later? : true ) }
let ( :subsection ) { instance_double ( Form :: Subsection , form : , copy_key : " subsection_copy_key " ) }
it " has the expected copy_key " do
expect ( question . copy_key ) . to eq ( " sales.setup.noint.not_joint_purchase " )
end
it " has the expected copy_key " do
expect ( question . copy_key ) . to eq ( " sales.subsection_copy_key.noint.not_joint_purchase " )
end
end
end