Browse Source

Write headers if logs don't exist, update header names

pull/1953/head
Kat 3 years ago
parent
commit
9d4b45f9ca
  1. 6
      app/services/csv/missing_addresses_csv_service.rb
  2. 10
      spec/services/csv/missing_addresses_csv_service_spec.rb

6
app/services/csv/missing_addresses_csv_service.rb

@ -83,10 +83,9 @@ module Csv
def create_lettings_addresses_csv def create_lettings_addresses_csv
logs = @organisation.managed_lettings_logs.filter_by_year(2023) logs = @organisation.managed_lettings_logs.filter_by_year(2023)
return if logs.empty?
CSV.generate(headers: true) do |csv| CSV.generate(headers: true) do |csv|
csv << ["Lettings log ID", "Tenancy start date", "Tenant code", "Property code", "Log owner", "Owning organisation name", "Managing organisation name", "UPRN", "Address line 1", "Address line 2 (optional)", "Town or City", "County (optional)", "Postcode"] csv << ["Log ID", "Tenancy start date", "Tenant code", "Property reference", "Log owner", "Owning organisation", "Managing organisation", "UPRN", "Address Line 1", "Address Line 2 (optional)", "Town or City", "County (optional)", "Property’s postcode"]
logs.each do |log| logs.each do |log|
csv << lettings_log_to_csv_row(log) csv << lettings_log_to_csv_row(log)
@ -96,10 +95,9 @@ module Csv
def create_sales_addresses_csv def create_sales_addresses_csv
logs = @organisation.sales_logs.filter_by_year(2023) logs = @organisation.sales_logs.filter_by_year(2023)
return if logs.empty?
CSV.generate(headers: true) do |csv| CSV.generate(headers: true) do |csv|
csv << ["Sales log ID", "Sale completion date", "Purchaser code", "Log owner", "Owning organisation name", "UPRN", "Address line 1", "Address line 2 (optional)", "Town or City", "County (optional)", "Postcode"] csv << ["Log ID", "Sale completion date", "Purchaser code", "Log owner", "Owning organisation", "UPRN", "Address Line 1", "Address Line 2 (optional)", "Town or City", "County (optional)", "Property’s postcode"]
logs.each do |log| logs.each do |log|
csv << sales_log_to_csv_row(log) csv << sales_log_to_csv_row(log)

10
spec/services/csv/missing_addresses_csv_service_spec.rb

@ -406,8 +406,9 @@ RSpec.describe Csv::MissingAddressesCsvService do
create(:lettings_log, managing_organisation: organisation, startdate: Time.zone.local(2022, 4, 5)) create(:lettings_log, managing_organisation: organisation, startdate: Time.zone.local(2022, 4, 5))
end end
it "returns nil" do it "returns only headers" do
expect(service.create_lettings_addresses_csv).to be_nil csv = service.create_lettings_addresses_csv
expect(csv).to eq "Log ID,Tenancy start date,Tenant code,Property reference,Log owner,Owning organisation,Managing organisation,UPRN,Address Line 1,Address Line 2 (optional),Town or City,County (optional),Property’s postcode\n"
end end
end end
end end
@ -502,8 +503,9 @@ RSpec.describe Csv::MissingAddressesCsvService do
create(:sales_log, :completed, saledate: Time.zone.local(2022, 4, 5)) create(:sales_log, :completed, saledate: Time.zone.local(2022, 4, 5))
end end
it "returns nil" do it "returns only headers" do
expect(service.create_sales_addresses_csv).to be_nil csv = service.create_sales_addresses_csv
expect(csv).to eq("Log ID,Sale completion date,Purchaser code,Log owner,Owning organisation,UPRN,Address Line 1,Address Line 2 (optional),Town or City,County (optional),Property’s postcode\n")
end end
end end
end end

Loading…
Cancel
Save