diff --git a/app/models/form/lettings/pages/lead_tenant_nationality.rb b/app/models/form/lettings/pages/lead_tenant_nationality.rb index ae67b1e32..09a25286c 100644 --- a/app/models/form/lettings/pages/lead_tenant_nationality.rb +++ b/app/models/form/lettings/pages/lead_tenant_nationality.rb @@ -6,6 +6,6 @@ class Form::Lettings::Pages::LeadTenantNationality < ::Form::Page end def questions - @questions ||= [Form::Lettings::Questions::National.new(nil, nil, self)] + @questions ||= [Form::Lettings::Questions::Nationality.new(nil, nil, self)] end end diff --git a/app/models/form/lettings/questions/national.rb b/app/models/form/lettings/questions/nationality.rb similarity index 78% rename from app/models/form/lettings/questions/national.rb rename to app/models/form/lettings/questions/nationality.rb index 0bfe198e0..019c8a4fa 100644 --- a/app/models/form/lettings/questions/national.rb +++ b/app/models/form/lettings/questions/nationality.rb @@ -1,9 +1,9 @@ -class Form::Lettings::Questions::National < ::Form::Question +class Form::Lettings::Questions::Nationality < ::Form::Question def initialize(id, hsh, page) super @id = "national" @check_answer_label = "Lead tenant’s nationality" - @header = "What is the lead tenant’s nationality?" + @header = "What is the nationality of the lead tenant?" @type = "radio" @check_answers_card_number = 1 @hint_text = "The lead tenant is the person in the household who does the most paid work. If several people do the same paid work, the lead tenant is whoever is the oldest." @@ -14,6 +14,8 @@ class Form::Lettings::Questions::National < ::Form::Question "18" => { "value" => "United Kingdom" }, "17" => { "value" => "Republic of Ireland" }, "19" => { "value" => "European Economic Area (EEA) country, excluding Ireland" }, + "20" => { "value" => "Afghanistan" }, + "21" => { "value" => "Ukraine" }, "12" => { "value" => "Other" }, "divider" => true, "13" => { "value" => "Tenant prefers not to say" }, diff --git a/spec/models/form/lettings/questions/nationality_spec.rb b/spec/models/form/lettings/questions/nationality_spec.rb new file mode 100644 index 000000000..d0eaeb69b --- /dev/null +++ b/spec/models/form/lettings/questions/nationality_spec.rb @@ -0,0 +1,48 @@ +require "rails_helper" + +RSpec.describe Form::Lettings::Questions::Nationality, type: :model do + subject(:question) { described_class.new(nil, nil, page) } + + let(:page) { instance_double(Form::Page) } + + it "has correct page" do + expect(question.page).to eq(page) + end + + it "has the correct id" do + expect(question.id).to eq("national") + end + + it "has the correct header" do + expect(question.header).to eq("What is the nationality of the lead tenant?") + end + + it "has the correct check_answer_label" do + expect(question.check_answer_label).to eq("Lead tenant’s nationality") + 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("The lead tenant is the person in the household who does the most paid work. If several people do the same paid work, the lead tenant is whoever is the oldest.") + end + + it "has the correct answer_options" do + expect(question.answer_options).to eq({ + "18" => { "value" => "United Kingdom" }, + "17" => { "value" => "Republic of Ireland" }, + "19" => { "value" => "European Economic Area (EEA) country, excluding Ireland" }, + "20" => { "value" => "Afghanistan" }, + "21" => { "value" => "Ukraine" }, + "12" => { "value" => "Other" }, + "divider" => true, + "13" => { "value" => "Tenant prefers not to say" }, + }) + end + + it "is not marked as derived" do + expect(question.derived?).to be false + end +end