diff --git a/app/decorators/casa_case_decorator.rb b/app/decorators/casa_case_decorator.rb index 287d99331c..cebac83d55 100644 --- a/app/decorators/casa_case_decorator.rb +++ b/app/decorators/casa_case_decorator.rb @@ -18,7 +18,7 @@ def court_report_submission end def court_report_submitted_date - object.court_report_submitted_at&.strftime('%B%e, %Y') + object.court_report_submitted_at&.strftime("%B%e, %Y") end def case_contacts_ordered_by_occurred_at diff --git a/app/models/casa_case.rb b/app/models/casa_case.rb index 537e5e017a..1d46e69fd2 100644 --- a/app/models/casa_case.rb +++ b/app/models/casa_case.rb @@ -23,7 +23,7 @@ class CasaCase < ApplicationRecord has_many :contact_types, through: :casa_case_contact_types, source: :contact_type accepts_nested_attributes_for :casa_case_contact_types - enum court_report_status: { not_submitted: 0, submitted: 1, in_review: 2, completed: 3 }, _prefix: :court_report + enum court_report_status: {not_submitted: 0, submitted: 1, in_review: 2, completed: 3}, _prefix: :court_report scope :ordered, -> { order(updated_at: :desc) } scope :actively_assigned_to, ->(volunteer) { @@ -66,7 +66,7 @@ class CasaCase < ApplicationRecord def court_report_status=(value) super - if (court_report_not_submitted?) + if court_report_not_submitted? self.court_report_submitted_at = nil else self.court_report_submitted_at ||= Time.current diff --git a/lib/tasks/deployment/20201108181154_backfill_court_report_submitted_at.rake b/lib/tasks/deployment/20201108181154_backfill_court_report_submitted_at.rake index 040e309a92..faca2311c3 100644 --- a/lib/tasks/deployment/20201108181154_backfill_court_report_submitted_at.rake +++ b/lib/tasks/deployment/20201108181154_backfill_court_report_submitted_at.rake @@ -1,9 +1,9 @@ namespace :after_party do - desc 'Deployment task: Backfill court_report_submitted_at and court_report_status' + desc "Deployment task: Backfill court_report_submitted_at and court_report_status" task backfill_court_report_submitted_at: :environment do puts "Running deploy task 'backfill_court_report_submitted_at'" - CasaCase.where(court_report_submitted: true).in_batches.update_all(court_report_status: :submitted, + CasaCase.where(court_report_submitted: true).in_batches.update_all(court_report_status: :submitted, court_report_submitted_at: Time.current) # Update task as completed. If you remove the line below, the task will diff --git a/spec/decorators/casa_case_decorator_spec.rb b/spec/decorators/casa_case_decorator_spec.rb index 79c839c05d..08641ca3c1 100644 --- a/spec/decorators/casa_case_decorator_spec.rb +++ b/spec/decorators/casa_case_decorator_spec.rb @@ -8,25 +8,25 @@ context "when case_report_status is not_submitted" do let(:court_report_status) { :not_submitted } - it { is_expected.to eq('Not submitted') } + it { is_expected.to eq("Not submitted") } end context "when case_report_status is submitted" do let(:court_report_status) { :submitted } - it { is_expected.to eq('Submitted') } + it { is_expected.to eq("Submitted") } end context "when case_report_status is in_review" do let(:court_report_status) { :in_review } - it { is_expected.to eq('In review') } + it { is_expected.to eq("In review") } end context "when case_report_status is completed" do let(:court_report_status) { :completed } - it { is_expected.to eq('Completed') } + it { is_expected.to eq("Completed") } end end @@ -34,10 +34,10 @@ subject { casa_case.decorate.court_report_submitted_date } let(:submitted_time) { Time.parse("Sun Nov 08 11:06:20 2020") } let(:casa_case) { build(:casa_case, court_report_submitted_at: submitted_time) } - - it { is_expected.to eq 'November 8, 2020' } - context 'when report is not submitted' do + it { is_expected.to eq "November 8, 2020" } + + context "when report is not submitted" do let(:submitted_time) { nil } it { is_expected.to be_nil } diff --git a/spec/models/casa_case_spec.rb b/spec/models/casa_case_spec.rb index 84a6f1c1a4..f746e2ecc5 100644 --- a/spec/models/casa_case_spec.rb +++ b/spec/models/casa_case_spec.rb @@ -67,7 +67,7 @@ end end - describe '#court_report_status=' do + describe "#court_report_status=" do let(:casa_case) { build(:casa_case) } subject { casa_case.court_report_status = court_report_status } @@ -76,49 +76,49 @@ before do travel_to submitted_time end - + after do travel_back end - context 'when the case is already submitted' do + context "when the case is already submitted" do let(:casa_case) { build(:casa_case, court_report_status: :submitted, court_report_submitted_at: submitted_time) } before do travel_to the_future end - context 'when the status is completed' do + context "when the status is completed" do let(:court_report_status) { :completed } - it 'completes the court report and does not update time' do + it "completes the court report and does not update time" do is_expected.to eq :completed expect(casa_case.court_report_submitted_at).to eq(submitted_time) end end - context 'when the status is not_submitted' do + context "when the status is not_submitted" do let(:court_report_status) { :not_submitted } - it 'clears submission date and value' do + it "clears submission date and value" do is_expected.to eq :not_submitted expect(casa_case.court_report_submitted_at).to be_nil end end end - context 'when status is submitted' do + context "when status is submitted" do let(:court_report_status) { :submitted } - it 'tracks the court report submission' do + it "tracks the court report submission" do is_expected.to eq :submitted expect(casa_case.court_report_submitted_at).to eq(submitted_time) end end - context 'when the status is in review' do + context "when the status is in review" do let(:court_report_status) { :in_review } - it 'tracks the court report submission' do + it "tracks the court report submission" do is_expected.to eq :in_review expect(casa_case.court_report_submitted_at).to eq(submitted_time) end diff --git a/spec/requests/casa_cases_spec.rb b/spec/requests/casa_cases_spec.rb index 25224b657e..53bded442f 100644 --- a/spec/requests/casa_cases_spec.rb +++ b/spec/requests/casa_cases_spec.rb @@ -172,7 +172,7 @@ it "updates permitted fields" do patch casa_case_url(casa_case), params: {casa_case: new_attributes} casa_case.reload - expect(casa_case.submitted?).to be_truthy + expect(casa_case.court_report_submitted?).to be_truthy # Not permitted expect(casa_case.case_number).to eq "111" @@ -228,7 +228,7 @@ patch casa_case_url(casa_case), params: {casa_case: new_attributes} casa_case.reload expect(casa_case.case_number).to eq "111" - expect(casa_case.completed?).to be true + expect(casa_case.court_report_completed?).to be true end it "redirects to the casa_case" do diff --git a/spec/system/admin_adds_new_case_spec.rb b/spec/system/admin_adds_new_case_spec.rb index 186610833c..bdc7aef3d3 100644 --- a/spec/system/admin_adds_new_case_spec.rb +++ b/spec/system/admin_adds_new_case_spec.rb @@ -27,6 +27,8 @@ check "Transition aged youth" has_checked_field? "Transition aged youth" + select "Submitted", from: "casa_case_court_report_status" + click_on "Create CASA Case" expect(page.body).to have_content(case_number) diff --git a/spec/system/admin_edits_a_case_spec.rb b/spec/system/admin_edits_a_case_spec.rb index b9fb59a686..070f098aa6 100644 --- a/spec/system/admin_edits_a_case_spec.rb +++ b/spec/system/admin_edits_a_case_spec.rb @@ -14,12 +14,10 @@ it "clicks back button after editing case" do visit edit_casa_case_path(casa_case) - check "Court report submitted" - has_checked_field? :court_report_submitted + select "Submitted", from: "casa_case_court_report_status" click_on "Back" visit edit_casa_case_path(casa_case) - - has_no_checked_field? :court_report_submitted + expect(casa_case).not_to be_court_report_submitted end it "edits case" do @@ -27,12 +25,9 @@ click_on "Edit Case Details" expect(page).to have_select("Hearing type") expect(page).to have_select("Judge") - has_no_checked_field? :court_report_submitted - check "Court report submitted" + select "Submitted", from: "casa_case_court_report_status" click_on "Update CASA Case" - - has_checked_field? :court_report_submitted - + expect(page).to have_text("Submitted") expect(page).to have_text("Court Date") expect(page).to have_text("Court Report Due Date") expect(page).to have_text("Day") diff --git a/spec/system/supervisor_edits_case_spec.rb b/spec/system/supervisor_edits_case_spec.rb index 12f82d5fd2..aa76e8527c 100644 --- a/spec/system/supervisor_edits_case_spec.rb +++ b/spec/system/supervisor_edits_case_spec.rb @@ -15,10 +15,9 @@ it "edits case" do visit casa_case_path(casa_case) - expect(page).to have_text("Court Report Submission: Not Submitted") + expect(page).to have_text("Court Report Status: Not submitted") visit edit_casa_case_path(casa_case) - has_no_checked_field? :court_report_submitted - check "Court report submitted" + select "Submitted", from: "casa_case_court_report_status" check "Youth" select "4", from: "casa_case_court_date_3i" select "November", from: "casa_case_court_date_2i" @@ -29,7 +28,6 @@ select next_year, from: "casa_case_court_report_due_date_1i" click_on "Update CASA Case" - has_checked_field? :court_report_submitted has_checked_field? "Youth" has_no_checked_field? "Supervisor" @@ -43,16 +41,15 @@ visit casa_case_path(casa_case) - expect(page).to have_text("Court Report Submission: Submitted") + expect(page).to have_text("Court Report Status: Submitted") expect(page).to have_text("4-NOV-#{next_year}") expect(page).to have_text("8-SEP-#{next_year}") end it "will return error message if date fields are not fully selected" do visit casa_case_path(casa_case) - expect(page).to have_text("Court Report Submission: Not Submitted") + expect(page).to have_text("Court Report Status: Not submitted") visit edit_casa_case_path(casa_case) - has_no_checked_field? :court_report_submitted select "November", from: "casa_case_court_date_2i" select "April", from: "casa_case_court_report_due_date_2i" @@ -65,9 +62,8 @@ it "will return error message if date fields are not valid" do visit casa_case_path(casa_case) - expect(page).to have_text("Court Report Submission: Not Submitted") + expect(page).to have_text("Court Report Status: Not submitted") visit edit_casa_case_path(casa_case) - has_no_checked_field? :court_report_submitted select "31", from: "casa_case_court_date_3i" select "April", from: "casa_case_court_date_2i" diff --git a/spec/system/volunteer_edits_case_spec.rb b/spec/system/volunteer_edits_case_spec.rb index fd93a011f0..5f2529659f 100644 --- a/spec/system/volunteer_edits_case_spec.rb +++ b/spec/system/volunteer_edits_case_spec.rb @@ -15,11 +15,9 @@ expect(page).to_not have_select("Hearing type") expect(page).to_not have_select("Judge") - check "Court report submitted" + select "Submitted", from: "casa_case_court_report_status" click_on "Update CASA Case" - has_no_checked_field? :court_report_submitted - click_on "Back" expect(page).to have_text("My Case") @@ -27,12 +25,10 @@ it "edits case" do visit casa_case_path(casa_case) - expect(page).to have_text("Court Report Submission: Not Submitted") + expect(page).to have_text("Court Report Status: Not submitted") visit edit_casa_case_path(casa_case) - has_no_checked_field? :court_report_submitted - check "Court report submitted" + select "Submitted", from: "casa_case_court_report_status" click_on "Update CASA Case" - has_checked_field? :court_report_submitted expect(page).to have_text("Court Date") expect(page).to have_text("Court Report Due Date") @@ -42,6 +38,6 @@ expect(page).not_to have_text("Deactivate Case") visit casa_case_path(casa_case) - expect(page).to have_text("Court Report Submission: Submitted") + expect(page).to have_text("Court Report Status: Submitted") end end