From b6488f80c8abbf32edce873381402295a0bae8b2 Mon Sep 17 00:00:00 2001 From: baarkerlounger Date: Thu, 23 Sep 2021 18:43:04 +0100 Subject: [PATCH] Rubocop --- app/models/form.rb | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/app/models/form.rb b/app/models/form.rb index a371aadce..6dcd32e77 100644 --- a/app/models/form.rb +++ b/app/models/form.rb @@ -1,31 +1,30 @@ class Form - - attr_reader :form_definition, :all_sections, :all_subsections, :all_pages + attr_reader :form_definition def initialize(start_year, end_year) form_json = "config/forms/#{start_year}_#{end_year}.json" raise "No form definition file exists for given year".freeze unless File.exist?(form_json) - @form_definition = JSON.load(File.new(form_json)) + @form_definition = JSON.parse(File.open(form_json).read) end # Returns a hash with sections as keys def all_sections - @sections ||= @form_definition["sections"] + @all_sections ||= @form_definition["sections"] end # Returns a hash with subsections as keys def all_subsections - @subsections ||= all_sections.map do |section_key, section_value| + @all_subsections ||= all_sections.map { |_section_key, section_value| section_value["subsections"] - end.reduce(:merge) + }.reduce(:merge) end # Returns a hash with pages as keys def all_pages - @all_pages ||= all_subsections.map do |subsection_key, subsection_value| + @all_pages ||= all_subsections.map { |_subsection_key, subsection_value| subsection_value["pages"] - end.reduce(:merge) + }.reduce(:merge) end # Returns a hash with the pages as keys @@ -38,9 +37,9 @@ class Form end def subsection_for_page(page) - all_subsections.find do |subsection_key, subsection_value| - subsection_value["pages"].keys.include?(page) - end.first + all_subsections.find { |_subsection_key, subsection_value| + subsection_value["pages"].key?(page) + }.first end def next_page(previous_page) @@ -52,7 +51,7 @@ class Form def previous_page(current_page) subsection = subsection_for_page(current_page) current_page_idx = pages_for_subsection(subsection).keys.index(current_page) - return unless current_page_idx > 0 + return unless current_page_idx.positive? pages_for_subsection(subsection).keys[current_page_idx - 1] end