From e0bdb2a89979a71ce88b147467b1a09c899b17bd Mon Sep 17 00:00:00 2001 From: baarkerlounger Date: Thu, 24 Mar 2022 10:25:01 +0000 Subject: [PATCH] Need to check text/numeric questions separately --- app/models/case_log.rb | 13 ++++++++----- lib/tasks/rent_ranges.rake | 2 +- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/app/models/case_log.rb b/app/models/case_log.rb index 7ca54cac2..559ac4e38 100644 --- a/app/models/case_log.rb +++ b/app/models/case_log.rb @@ -293,11 +293,14 @@ private def reset_not_routed_questions form.invalidated_page_questions(self).each do |question| - enabled = form.enabled_page_questions(self) - answer_options = enabled.map(&:id).include?(question.id) ? enabled.find { |q| q.id == question.id }.answer_options : [] - contains_selected_answer_option = answer_options.present? ? answer_options.key?(public_send(question.id).to_s) : false - if !contains_selected_answer_option && respond_to?(question.id.to_s) - public_send("#{question.id}=", nil) + enabled_questions = form.enabled_page_questions(self) + enabled_question_ids = enabled_questions.map(&:id) + if %w[radio checkbox].include?(question.type) + enabled_answer_options = enabled_question_ids.include?(question.id) ? enabled_questions.find { |q| q.id == question.id }.answer_options : {} + current_answer_option_valid = enabled_answer_options.present? ? enabled_answer_options.key?(public_send(question.id).to_s) : false + public_send("#{question.id}=", nil) if !current_answer_option_valid && respond_to?(question.id.to_s) + else + public_send("#{question.id}=", nil) unless enabled_question_ids.include?(question.id) end end end diff --git a/lib/tasks/rent_ranges.rake b/lib/tasks/rent_ranges.rake index 85b7427a5..f4b3b24e7 100644 --- a/lib/tasks/rent_ranges.rake +++ b/lib/tasks/rent_ranges.rake @@ -24,6 +24,6 @@ namespace :data_import do ) count += 1 end - pp "Created/updated #{count} records" + pp "Created/updated #{count} records" unless Rails.env.test? end end