From d3e3b85a1cd05b6bae208a2e99d4df1aa6e25610 Mon Sep 17 00:00:00 2001 From: baarkerlounger Date: Wed, 24 Nov 2021 13:57:04 +0000 Subject: [PATCH] Dashboard controller panel specs --- .../admin/dashboard_controller_spec.rb | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 spec/controllers/admin/dashboard_controller_spec.rb diff --git a/spec/controllers/admin/dashboard_controller_spec.rb b/spec/controllers/admin/dashboard_controller_spec.rb new file mode 100644 index 000000000..e11225166 --- /dev/null +++ b/spec/controllers/admin/dashboard_controller_spec.rb @@ -0,0 +1,33 @@ +require "rails_helper" +require_relative "../../support/devise" + +describe Admin::DashboardController, type: :controller do + render_views + let(:page) { Capybara::Node::Simple.new(response.body) } + let(:resource_title) { "Dashboard" } + let!(:case_log) { FactoryBot.create(:case_log, :in_progress) } + let(:valid_session) { {} } + login_admin_user + + describe "Get case logs" do + before do + get :index, session: valid_session + end + + it "returns a dashboard page" do + expect(page).to have_content(resource_title) + end + + it "returns a panel of recent case logs" do + expect(page).to have_xpath("//div[contains(@class, 'panel') and contains(//h3, 'Recent Case Logs')]") + end + + it "returns a panel of in progress case logs" do + expect(page).to have_xpath("//div[@class='panel' and //h3[contains(., 'Total case logs in progress')]]") + end + + it "returns a panel of completed case logs" do + expect(page).to have_xpath("//div[@class='panel' and //h3[contains(., 'Total case logs completed')]]") + end + end +end