Browse Source

use test_form.json in tests

pull/46/head
Kat 4 years ago committed by MadeTech Dushan
parent
commit
fcaff86546
  1. 6
      app/controllers/case_logs_controller.rb
  2. 4
      app/helpers/check_answers_helper.rb
  3. 4
      app/models/form.rb
  4. 2101
      config/forms/test_form.json
  5. 2
      config/routes.rb
  6. 2
      spec/helpers/conditional_questions_helper_spec.rb
  7. 2
      spec/helpers/question_attribute_helper_spec.rb
  8. 2
      spec/helpers/tasklist_helper_spec.rb
  9. 2
      spec/models/form_spec.rb

6
app/controllers/case_logs_controller.rb

@ -27,13 +27,13 @@ class CaseLogsController < ApplicationController
end
def edit
@form = Form.new(2021, 2022)
@form = ENV["RAILS_ENV"] == "test" ? Form.new("test", "form") : Form.new(2021, 2022)
@case_log = CaseLog.find(params[:id])
render :edit
end
def submit_form
form = Form.new(2021, 2022)
form = ENV["RAILS_ENV"] == "test" ? Form.new("test", "form") : Form.new(2021, 2022)
@case_log = CaseLog.find(params[:id])
previous_page = params[:case_log][:previous_page]
questions_for_page = form.questions_for_page(previous_page)
@ -55,7 +55,7 @@ class CaseLogsController < ApplicationController
render "form/check_answers", locals: { case_log: @case_log, subsection: subsection }
end
form = Form.new(2021, 2022)
form = ENV["RAILS_ENV"] == "test" ? Form.new("test", "form") : Form.new(2021, 2022)
form.all_pages.map do |page_key, page_info|
define_method(page_key) do |_errors = {}|
@case_log = CaseLog.find(params[:case_log_id])

4
app/helpers/check_answers_helper.rb

@ -10,7 +10,7 @@ module CheckAnswersHelper
end
def total_questions(subsection, case_log)
form = Form.new(2021, 2022)
form = ENV["RAILS_ENV"] == "test" ? Form.new("test", "form") : Form.new(2021, 2022) #form should be passed in
questions = form.questions_for_subsection(subsection)
questions_not_applicable = []
questions.reject do |question_key, question|
@ -37,7 +37,7 @@ module CheckAnswersHelper
end
def subsection_pages(subsection)
form = Form.new(2021, 2022)
form = ENV["RAILS_ENV"] == "test" ? Form.new("test", "form") : Form.new(2021, 2022) #form should be passed in
form.pages_for_subsection(subsection)
end

4
app/models/form.rb

@ -2,8 +2,10 @@ class Form
attr_reader :form_definition
def initialize(start_year, end_year)
ENV["RAILS_ENV"]
form_json = "config/forms/#{start_year}_#{end_year}.json"
raise "No form definition file exists for given year".freeze unless File.exist?(form_json)
# binding.pry
# raise "No form definition file exists for given year".freeze unless File.exist?(form_json)
@form_definition = JSON.parse(File.open(form_json).read)
end

2101
config/forms/test_form.json

File diff suppressed because it is too large Load Diff

2
config/routes.rb

@ -5,7 +5,7 @@ Rails.application.routes.draw do
post "/case_logs/:id", to: "case_logs#submit_form"
form = Form.new(2021, 2022)
form = ENV["RAILS_ENV"] == "test" ? Form.new("test", "form") : Form.new(2021, 2022)
resources :case_logs do
form.all_pages.keys.map do |page|
get page.to_s, to: "case_logs##{page}"

2
spec/helpers/conditional_questions_helper_spec.rb

@ -1,7 +1,7 @@
require "rails_helper"
RSpec.describe ConditionalQuestionsHelper do
let(:form) { Form.new(2021, 2022) }
let(:form) { Form.new("test", "form") }
let(:page_key) { "armed_forces" }
let(:page) { form.all_pages[page_key] }

2
spec/helpers/question_attribute_helper_spec.rb

@ -1,7 +1,7 @@
require "rails_helper"
RSpec.describe QuestionAttributeHelper do
let(:form) { Form.new(2021, 2022) }
let(:form) { Form.new("test", "form") }
let(:questions) { form.questions_for_page("rent") }
describe "html attributes" do

2
spec/helpers/tasklist_helper_spec.rb

@ -3,7 +3,7 @@ require "rails_helper"
RSpec.describe TasklistHelper do
let!(:empty_case_log) { FactoryBot.create(:case_log) }
let!(:case_log) { FactoryBot.create(:case_log, :in_progress) }
let(:form) { Form.new(2021, 2022) }
let(:form) { Form.new("test", "form") }
describe "get subsection status" do
let(:section) { "income_and_benefits" }

2
spec/models/form_spec.rb

@ -1,7 +1,7 @@
require "rails_helper"
RSpec.describe Form, type: :model do
let(:form) { Form.new(2021, 2022) }
let(:form) { Form.new("test", "form") }
describe ".next_page" do
let(:previous_page) { "tenant_age" }

Loading…
Cancel
Save