From bb1e98e91c713a474e167272b524a9d10f4b330f Mon Sep 17 00:00:00 2001 From: Sam Williams Date: Mon, 22 Jan 2024 20:10:20 -0500 Subject: [PATCH] Draft Case Contact Filter Fix --- app/controllers/case_contacts_controller.rb | 7 ++----- app/views/learning_hours/_form.html.erb | 2 +- spec/system/case_contacts/index_spec.rb | 21 +++++++++++++++++++++ 3 files changed, 24 insertions(+), 6 deletions(-) diff --git a/app/controllers/case_contacts_controller.rb b/app/controllers/case_contacts_controller.rb index bb4b4118b2..a5e86f65bc 100644 --- a/app/controllers/case_contacts_controller.rb +++ b/app/controllers/case_contacts_controller.rb @@ -20,6 +20,7 @@ def index ) || return case_contacts = CaseContact.case_hash_from_cases(@filterrific.find) + case_contacts = case_contacts.select { |k,_v| k == params[:casa_case_id].to_i } if params[:casa_case_id].present? @presenter = CaseContactPresenter.new(case_contacts) end @@ -107,11 +108,7 @@ def current_organization_groups end def all_case_contacts - query = policy_scope(current_organization.case_contacts).includes(:creator, contact_types: :contact_type_group) - if params[:casa_case_id].present? - query = query.where(casa_case_id: params[:casa_case_id]) - end - query + policy_scope(current_organization.case_contacts).includes(:creator, contact_types: :contact_type_group) end def additional_expense_params diff --git a/app/views/learning_hours/_form.html.erb b/app/views/learning_hours/_form.html.erb index fe01cf8ca9..cadc8c8f40 100644 --- a/app/views/learning_hours/_form.html.erb +++ b/app/views/learning_hours/_form.html.erb @@ -49,7 +49,7 @@
<%= form.label :occurred_at, "Occurred On" %>:
- <% occurred_at = learning_hour.occurred_at || Time.zone.now %> + <% occurred_at = learning_hour.occurred_at || Date.today %>
<%= form.text_field :occurred_at, value: occurred_at.to_date, diff --git a/spec/system/case_contacts/index_spec.rb b/spec/system/case_contacts/index_spec.rb index af805b57f3..3b2640a9a6 100644 --- a/spec/system/case_contacts/index_spec.rb +++ b/spec/system/case_contacts/index_spec.rb @@ -67,6 +67,27 @@ end end end + + describe "by casa_case_id" do + let!(:case_contact) { create(:case_contact, :details_status, creator: volunteer, draft_case_ids: [casa_case.id]) } + let!(:other_casa_case) { create(:casa_case, casa_org: organization, case_number: "CINA-2") } + + it "displays the draft" do + sign_in volunteer + visit case_contacts_path(casa_case_id: casa_case.id) + + expect(page).not_to have_content "You have no case contacts for this case." + expect(page).to have_content "Draft" + end + + it "only displays the filtered case" do + sign_in volunteer + visit case_contacts_path(casa_case_id: casa_case.id) + + expect(page).not_to have_content other_casa_case.case_number + expect(page).to have_content casa_case.case_number + end + end end describe "case contacts text color" do