From 41f0e46e0728ee8bc81e2589b82f849bc234a9d1 Mon Sep 17 00:00:00 2001 From: edwin-jebaraj Date: Thu, 23 Jan 2025 14:20:37 +0000 Subject: [PATCH] Added test spec for case with category and without category --- spec/factories/support/case.rb | 4 ++ .../agent_can_email_to_evaluators_spec.rb | 54 +++++++++++++++++++ 2 files changed, 58 insertions(+) diff --git a/spec/factories/support/case.rb b/spec/factories/support/case.rb index 50795cf21..fad0fda66 100644 --- a/spec/factories/support/case.rb +++ b/spec/factories/support/case.rb @@ -90,5 +90,9 @@ trait :stage_unspecified do association :procurement, factory: %i[support_procurement stage_unspecified] end + + trait :with_support_category do + association :category, factory: :support_category, title: "Audit Accessibility (buildings and digital)" + end end end diff --git a/spec/features/support/agent_can_email_to_evaluators_spec.rb b/spec/features/support/agent_can_email_to_evaluators_spec.rb index 4ed70ad33..5daa0df26 100644 --- a/spec/features/support/agent_can_email_to_evaluators_spec.rb +++ b/spec/features/support/agent_can_email_to_evaluators_spec.rb @@ -49,4 +49,58 @@ expect(find("#complete-evaluation-4-status")).to have_text("Complete") end + + context "without sub_category" do + it "sends support email" do + support_case.update!(evaluation_due_date: Date.tomorrow, has_uploaded_documents: true, category_id: nil) + support_case.evaluators.create!(first_name: "Momo", last_name: "Taro", email: "email@address") + document_uploader.save! + create(:support_email_template, title: "Invitation to complete procurement evaluation", subject: "about energy", body: "Test body {{sub_category}} ") + support_case.reload + + visit support_case_path(support_case, anchor: "tasklist") + + expect(find("#complete-evaluation-4-status")).to have_text("To do") + + visit edit_support_case_email_evaluators_path(support_case) + + expect(page).not_to have_content("an Audit Accessibility (buildings and digital)") + expect(page).to have_content("[sub_category]") + + create(:support_email, :inbox, ticket: support_case, outlook_conversation_id: "OCID1", subject: "Email Evaluators", recipients: [{ "name" => "Test 1", "address" => "test1@email.com" }], unique_body: "Email 1", is_read: false) + support_case.update!(sent_email_to_evaluators: true) + + visit support_case_path(support_case, anchor: "tasklist") + + expect(find("#complete-evaluation-4-status")).to have_text("Complete") + end + end + + context "with sub_category" do + let(:support_case) { create(:support_case, :with_support_category) } + + it "sends support email" do + support_case.update!(evaluation_due_date: Date.tomorrow, has_uploaded_documents: true) + support_case.evaluators.create!(first_name: "Momo", last_name: "Taro", email: "email@address") + document_uploader.save! + create(:support_email_template, title: "Invitation to complete procurement evaluation", subject: "about energy", body: "Test body {{sub_category}} ") + support_case.reload + + visit support_case_path(support_case, anchor: "tasklist") + + expect(find("#complete-evaluation-4-status")).to have_text("To do") + + visit edit_support_case_email_evaluators_path(support_case) + + expect(page).to have_content("an Audit Accessibility (buildings and digital)") + expect(page).not_to have_content("[sub_category]") + + create(:support_email, :inbox, ticket: support_case, outlook_conversation_id: "OCID1", subject: "Email Evaluators", recipients: [{ "name" => "Test 1", "address" => "test1@email.com" }], unique_body: "Email 1", is_read: false) + support_case.update!(sent_email_to_evaluators: true) + + visit support_case_path(support_case, anchor: "tasklist") + + expect(find("#complete-evaluation-4-status")).to have_text("Complete") + end + end end