Browse Source

Don't paginate CSV download

pull/455/head
baarkerlounger 3 years ago
parent
commit
206aab915d
  1. 4
      app/controllers/case_logs_controller.rb
  2. 16
      spec/requests/case_logs_controller_spec.rb

4
app/controllers/case_logs_controller.rb

@ -11,7 +11,9 @@ class CaseLogsController < ApplicationController
respond_to do |format|
format.html
format.csv { send_data @case_logs.to_csv, filename: "logs-#{Time.zone.now}.csv" }
format.csv do
send_data current_user.case_logs.to_csv, filename: "logs-#{Time.zone.now}.csv"
end
end
end

16
spec/requests/case_logs_controller_spec.rb

@ -405,6 +405,8 @@ RSpec.describe CaseLogsController, type: :request do
let(:user) { FactoryBot.create(:user) }
let(:organisation) { user.organisation }
let(:other_organisation) { FactoryBot.create(:organisation) }
context "when a log exists" do
let!(:case_log) do
FactoryBot.create(
:case_log,
@ -437,6 +439,20 @@ RSpec.describe CaseLogsController, type: :request do
end
end
context "when there are more than 20 logs" do
before do
sign_in user
FactoryBot.create_list(:case_log, 26, owning_organisation: organisation)
get "/logs", headers: headers, params: {}
end
it "does not paginate, it downloads all the user's logs" do
csv = CSV.parse(response.body)
expect(csv.count).to eq(27)
end
end
end
describe "PATCH" do
let(:case_log) do
FactoryBot.create(:case_log, :in_progress, tenant_code: "Old Value", postcode_full: "M1 1AE")

Loading…
Cancel
Save