From 5536b96b86d884406e7fd58034b61c8e4d9a79f7 Mon Sep 17 00:00:00 2001 From: Kat Date: Thu, 7 Apr 2022 15:46:12 +0100 Subject: [PATCH] Apply filters to csv downloads --- app/controllers/case_logs_controller.rb | 2 +- spec/requests/case_logs_controller_spec.rb | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/app/controllers/case_logs_controller.rb b/app/controllers/case_logs_controller.rb index 767e33046..ca9804056 100644 --- a/app/controllers/case_logs_controller.rb +++ b/app/controllers/case_logs_controller.rb @@ -14,7 +14,7 @@ class CaseLogsController < ApplicationController respond_to do |format| format.html format.csv do - send_data current_user.case_logs.to_csv, filename: "logs-#{Time.zone.now}.csv" + send_data filtered_case_logs.to_csv, filename: "logs-#{Time.zone.now}.csv" end end end diff --git a/spec/requests/case_logs_controller_spec.rb b/spec/requests/case_logs_controller_spec.rb index 1337cd650..88d2e7468 100644 --- a/spec/requests/case_logs_controller_spec.rb +++ b/spec/requests/case_logs_controller_spec.rb @@ -477,6 +477,10 @@ RSpec.describe CaseLogsController, type: :request do before do sign_in user FactoryBot.create(:case_log) + FactoryBot.create(:case_log, + :completed, + owning_organisation: organisation, + managing_organisation: organisation) get "/logs", headers: headers, params: {} end @@ -488,13 +492,19 @@ RSpec.describe CaseLogsController, type: :request do it "does not download other orgs logs" do csv = CSV.parse(response.body) - expect(csv.count).to eq(2) + expect(csv.count).to eq(3) end it "downloads answer labels rather than values" do csv = CSV.parse(response.body) expect(csv.second[10]).to eq("Full-time – 30 hours or more") end + + it "dowloads filtered logs" do + get "/logs?status[]=completed", headers:, params: {} + csv = CSV.parse(response.body) + expect(csv.count).to eq(2) + end end context "when there are more than 20 logs" do