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