Browse Source

add a test for not clearing text fields

pull/416/head
Kat 3 years ago
parent
commit
97342c182a
  1. 28
      spec/fixtures/forms/2021_2022.json
  2. 10
      spec/models/case_log_spec.rb
  3. 2
      spec/models/form_handler_spec.rb
  4. 4
      spec/models/form_spec.rb
  5. 2
      spec/requests/case_logs_controller_spec.rb

28
spec/fixtures/forms/2021_2022.json vendored

@ -762,6 +762,34 @@
"suffix": " every week" "suffix": " every week"
} }
} }
},
"care_home_charge": {
"questions": {
"offered": {
"check_answer_label": "Basic Rent",
"header": "What is the basic rent?",
"hint_text": "Eligible for housing benefit or Universal Credit",
"type": "numeric",
"min": 0,
"step": 1,
"width": 4
}
},
"depends_on": [{"period": 3}]
},
"care_home_charge_bi_weekly": {
"questions": {
"offered": {
"check_answer_label": "Basic Rent",
"header": "What is the basic rent?",
"hint_text": "Eligible for housing benefit or Universal Credit",
"type": "numeric",
"min": 0,
"step": 1,
"width": 4
}
},
"depends_on": [{"period": 2}]
} }
} }
} }

10
spec/models/case_log_spec.rb

@ -1593,6 +1593,16 @@ RSpec.describe CaseLog do
end end
end end
context "when a non select question associated with several pages is routed to" do
let(:case_log) { FactoryBot.create(:case_log, :in_progress, period: 2) }
it "does not clear the answer value" do
case_log.update!({ offered: 4 })
case_log.reload
expect(case_log.offered).to eq(4)
end
end
context "when the case log does not have a valid form set yet" do context "when the case log does not have a valid form set yet" do
let(:case_log) { FactoryBot.create(:case_log) } let(:case_log) { FactoryBot.create(:case_log) }

2
spec/models/form_handler_spec.rb

@ -17,7 +17,7 @@ RSpec.describe FormHandler do
form_handler = described_class.instance form_handler = described_class.instance
form = form_handler.get_form(test_form_name) form = form_handler.get_form(test_form_name)
expect(form).to be_a(Form) expect(form).to be_a(Form)
expect(form.pages.count).to eq(31) expect(form.pages.count).to eq(33)
end end
end end

4
spec/models/form_spec.rb

@ -132,7 +132,7 @@ RSpec.describe Form, type: :model do
describe "invalidated_page_questions" do describe "invalidated_page_questions" do
context "when dependencies are not met" do context "when dependencies are not met" do
let(:expected_invalid) { %w[la_known cbl conditional_question_no_second_question net_income_value_check dependent_question layear declaration] } let(:expected_invalid) { %w[la_known cbl conditional_question_no_second_question net_income_value_check dependent_question offered layear declaration] }
it "returns an array of question keys whose pages conditions are not met" do it "returns an array of question keys whose pages conditions are not met" do
expect(form.invalidated_page_questions(case_log).map(&:id).uniq).to eq(expected_invalid) expect(form.invalidated_page_questions(case_log).map(&:id).uniq).to eq(expected_invalid)
@ -140,7 +140,7 @@ RSpec.describe Form, type: :model do
end end
context "with two pages having the same question and only one has dependencies met" do context "with two pages having the same question and only one has dependencies met" do
let(:expected_invalid) { %w[la_known cbl conditional_question_no_second_question net_income_value_check dependent_question layear declaration] } let(:expected_invalid) { %w[la_known cbl conditional_question_no_second_question net_income_value_check dependent_question offered layear declaration] }
it "returns an array of question keys whose pages conditions are not met" do it "returns an array of question keys whose pages conditions are not met" do
case_log["preg_occ"] = "No" case_log["preg_occ"] = "No"

2
spec/requests/case_logs_controller_spec.rb

@ -28,6 +28,7 @@ RSpec.describe CaseLogsController, type: :request do
let(:tenant_code) { "T365" } let(:tenant_code) { "T365" }
let(:age1) { 35 } let(:age1) { 35 }
let(:offered) { 12 } let(:offered) { 12 }
let(:period) { 2 }
let(:property_postcode) { "SE11 6TY" } let(:property_postcode) { "SE11 6TY" }
let(:in_progress) { "in_progress" } let(:in_progress) { "in_progress" }
let(:completed) { "completed" } let(:completed) { "completed" }
@ -41,6 +42,7 @@ RSpec.describe CaseLogsController, type: :request do
"age1": age1, "age1": age1,
"property_postcode": property_postcode, "property_postcode": property_postcode,
"offered": offered, "offered": offered,
"period": period,
} }
end end

Loading…
Cancel
Save