3 changed files with 5 additions and 76 deletions
@ -1,31 +0,0 @@ |
|||||||
class Form::Lettings::Questions::Nationality < ::Form::Question |
|
||||||
def initialize(id, hsh, page) |
|
||||||
super |
|
||||||
@id = "national" |
|
||||||
@type = "radio" |
|
||||||
@check_answers_card_number = 1 |
|
||||||
@answer_options = ANSWER_OPTIONS |
|
||||||
@question_number = get_question_number_from_hash(QUESTION_NUMBER_FROM_YEAR) |
|
||||||
end |
|
||||||
|
|
||||||
ANSWER_OPTIONS = { |
|
||||||
"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" }, |
|
||||||
}.freeze |
|
||||||
|
|
||||||
QUESTION_NUMBER_FROM_YEAR = { 2023 => 36, 2024 => 35, 2025 => 35, 2026 => 34 }.freeze |
|
||||||
|
|
||||||
def label_from_value(value, _log = nil, _user = nil) |
|
||||||
return unless value |
|
||||||
|
|
||||||
return "Prefers not to say" if value.to_i == 13 |
|
||||||
|
|
||||||
super |
|
||||||
end |
|
||||||
end |
|
||||||
@ -1,36 +0,0 @@ |
|||||||
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, 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("national") |
|
||||||
end |
|
||||||
|
|
||||||
it "has the correct type" do |
|
||||||
expect(question.type).to eq("radio") |
|
||||||
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?(nil)).to be false |
|
||||||
end |
|
||||||
end |
|
||||||
Loading…
Reference in new issue