|
|
|
@ -144,6 +144,39 @@ RSpec.describe BulkUpload::Lettings::Validator do |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
context "when uploading a 2023 template for 2024 bulk upload" do |
|
|
|
|
|
|
|
let(:bulk_upload) { create(:bulk_upload, user:, year: 2024) } |
|
|
|
|
|
|
|
let(:log) { build(:lettings_log, :completed, startdate: Time.zone.local(2023, 5, 6), tenancycode: "5234234234234") } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
context "with no headers" do |
|
|
|
|
|
|
|
before do |
|
|
|
|
|
|
|
file.write(BulkUpload::LettingsLogToCsv.new(log:, line_ending: "\r\n", col_offset: 0).to_2024_csv_row) |
|
|
|
|
|
|
|
file.close |
|
|
|
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
it "is not valid" do |
|
|
|
|
|
|
|
expect(validator).not_to be_valid |
|
|
|
|
|
|
|
end |
|
|
|
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
context "with headers" do |
|
|
|
|
|
|
|
let(:seed) { rand } |
|
|
|
|
|
|
|
let(:log_to_csv) { BulkUpload::LettingsLogToCsv.new(log:) } |
|
|
|
|
|
|
|
let(:field_numbers) { log_to_csv.default_2023_field_numbers + %w[invalid_field_number] } |
|
|
|
|
|
|
|
let(:field_values) { log_to_csv.to_2023_row + %w[value_for_invalid_field_number] } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
before do |
|
|
|
|
|
|
|
file.write(log_to_csv.custom_field_numbers_row(seed:, field_numbers:)) |
|
|
|
|
|
|
|
file.write(log_to_csv.to_custom_csv_row(seed:, field_values:)) |
|
|
|
|
|
|
|
file.rewind |
|
|
|
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
it "is not valid" do |
|
|
|
|
|
|
|
expect(validator).not_to be_valid |
|
|
|
|
|
|
|
end |
|
|
|
|
|
|
|
end |
|
|
|
|
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|