|
|
|
@ -1,7 +1,13 @@
|
|
|
|
|
require "rails_helper" |
|
|
|
|
require "rake" |
|
|
|
|
|
|
|
|
|
RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task do |
|
|
|
|
RSpec.describe "update_manual_address_entry_selected_preexisting_logs_spec", type: :task do |
|
|
|
|
before do |
|
|
|
|
Rake.application.rake_require("tasks/update_manual_address_entry_selected_prexisting_logs") |
|
|
|
|
Rake::Task.define_task(:environment) |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
describe "bulk_update:update_manual_address_entry_selected" do |
|
|
|
|
let(:task) { Rake::Task["bulk_update:update_manual_address_entry_selected"] } |
|
|
|
|
|
|
|
|
|
let(:lettings_log_uprn_entered) do |
|
|
|
@ -36,17 +42,13 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
|
|
|
|
|
build(:sales_log, :completed_without_uprn, saledate: Time.zone.local(2024, 12, 30)) |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
before do |
|
|
|
|
Rake.application.rake_require("tasks/update_manual_address_entry_selected_prexisting_logs") |
|
|
|
|
Rake::Task.define_task(:environment) |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
context "when running the task" do |
|
|
|
|
context "when logs do not meet the criteria" do |
|
|
|
|
before do |
|
|
|
|
lettings_log_uprn_found.save!(validate: false) |
|
|
|
|
lettings_log_uprn_entered.save!(validate: false) |
|
|
|
|
lettings_log_address_fields_not_entered.save!(validate: false) |
|
|
|
|
|
|
|
|
|
sales_log_uprn_found.save!(validate: false) |
|
|
|
|
sales_log_uprn_entered.save!(validate: false) |
|
|
|
|
sales_log_address_fields_not_entered.save!(validate: false) |
|
|
|
@ -54,8 +56,10 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
|
|
|
|
|
|
|
|
|
|
it "does not update logs with a UPRN entered" do |
|
|
|
|
task.invoke |
|
|
|
|
|
|
|
|
|
lettings_log_uprn_entered.reload |
|
|
|
|
sales_log_uprn_entered.reload |
|
|
|
|
|
|
|
|
|
expect(lettings_log_uprn_entered.manual_address_entry_selected).to be false |
|
|
|
|
expect(lettings_log_uprn_entered.uprn).to eq("10033558653") |
|
|
|
|
expect(sales_log_uprn_entered.manual_address_entry_selected).to be false |
|
|
|
@ -64,8 +68,10 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
|
|
|
|
|
|
|
|
|
|
it "does not update logs with a UPRN found" do |
|
|
|
|
task.invoke |
|
|
|
|
|
|
|
|
|
lettings_log_uprn_found.reload |
|
|
|
|
sales_log_uprn_found.reload |
|
|
|
|
|
|
|
|
|
expect(lettings_log_uprn_found.manual_address_entry_selected).to be false |
|
|
|
|
expect(lettings_log_uprn_found.uprn).to eq("10033558653") |
|
|
|
|
expect(sales_log_uprn_found.manual_address_entry_selected).to be false |
|
|
|
@ -74,8 +80,10 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
|
|
|
|
|
|
|
|
|
|
it "does not update logs with no UPRN or address fields entered" do |
|
|
|
|
task.invoke |
|
|
|
|
|
|
|
|
|
lettings_log_address_fields_not_entered.reload |
|
|
|
|
sales_log_address_fields_not_entered.reload |
|
|
|
|
|
|
|
|
|
expect(lettings_log_address_fields_not_entered.manual_address_entry_selected).to be false |
|
|
|
|
expect(sales_log_address_fields_not_entered.manual_address_entry_selected).to be false |
|
|
|
|
end |
|
|
|
@ -85,6 +93,7 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
|
|
|
|
|
before do |
|
|
|
|
lettings_log_address_manually_entered.manual_address_entry_selected = false |
|
|
|
|
lettings_log_address_manually_entered.save!(validate: false) |
|
|
|
|
|
|
|
|
|
sales_log_address_manually_entered.manual_address_entry_selected = false |
|
|
|
|
sales_log_address_manually_entered.save!(validate: false) |
|
|
|
|
end |
|
|
|
@ -95,6 +104,7 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
|
|
|
|
|
expect(lettings_log_address_manually_entered.address_line2).to eq("Testville") |
|
|
|
|
expect(lettings_log_address_manually_entered.town_or_city).to eq("Testford") |
|
|
|
|
expect(lettings_log_address_manually_entered.postcode_full).to eq("SW1 1AA") |
|
|
|
|
|
|
|
|
|
expect(sales_log_address_manually_entered.manual_address_entry_selected).to be false |
|
|
|
|
expect(sales_log_address_manually_entered.address_line1).to eq("1 Test Street") |
|
|
|
|
expect(sales_log_address_manually_entered.address_line2).to eq("Testville") |
|
|
|
@ -102,6 +112,7 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
|
|
|
|
|
expect(sales_log_address_manually_entered.postcode_full).to eq("SW1 1AA") |
|
|
|
|
|
|
|
|
|
task.invoke |
|
|
|
|
|
|
|
|
|
lettings_log_address_manually_entered.reload |
|
|
|
|
sales_log_address_manually_entered.reload |
|
|
|
|
|
|
|
|
@ -110,6 +121,7 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
|
|
|
|
|
expect(lettings_log_address_manually_entered.address_line2).to eq("Testville") |
|
|
|
|
expect(lettings_log_address_manually_entered.town_or_city).to eq("Testford") |
|
|
|
|
expect(lettings_log_address_manually_entered.postcode_full).to eq("SW1 1AA") |
|
|
|
|
|
|
|
|
|
expect(sales_log_address_manually_entered.manual_address_entry_selected).to be true |
|
|
|
|
expect(sales_log_address_manually_entered.address_line1).to eq("1 Test Street") |
|
|
|
|
expect(sales_log_address_manually_entered.address_line2).to eq("Testville") |
|
|
|
@ -119,3 +131,55 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
|
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
describe "bulk_update:update_postcode_full_preexisting_manual_entry_logs" do |
|
|
|
|
let(:task) { Rake::Task["bulk_update:update_postcode_full_preexisting_manual_entry_logs"] } |
|
|
|
|
|
|
|
|
|
let(:lettings_log_to_fix) do |
|
|
|
|
build(:lettings_log, :inprogress_without_address_fields, startdate: Time.zone.local(2024, 6, 1), updated_at: Time.zone.parse("2025-03-19 16:30:00")) |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
let(:lettings_log_not_to_fix) do |
|
|
|
|
build(:lettings_log, :inprogress_without_address_fields, startdate: Time.zone.local(2024, 6, 1), updated_at: Time.zone.parse("2025-03-19 15:30:00")) |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
before do |
|
|
|
|
lettings_log_to_fix.manual_address_entry_selected = true |
|
|
|
|
lettings_log_to_fix.address_line1 = "1 Test Street" |
|
|
|
|
lettings_log_to_fix.address_line2 = "Testville" |
|
|
|
|
lettings_log_to_fix.town_or_city = "Testford" |
|
|
|
|
lettings_log_to_fix.postcode_full = nil |
|
|
|
|
lettings_log_to_fix.address_line1_input = "1 Test Street" |
|
|
|
|
lettings_log_to_fix.postcode_full_input = "SW1 2BB" |
|
|
|
|
lettings_log_to_fix.save!(validate: false) |
|
|
|
|
lettings_log_not_to_fix.postcode_full = nil |
|
|
|
|
lettings_log_not_to_fix.save!(validate: false) |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
context "when running the task" do |
|
|
|
|
it "updates logs that meet the criteria" do |
|
|
|
|
|
|
|
|
|
expect(lettings_log_to_fix.postcode_full).to be_nil |
|
|
|
|
expect(lettings_log_to_fix.address_line1).to eq("1 Test Street") |
|
|
|
|
expect(lettings_log_to_fix.address_line2).to eq("Testville") |
|
|
|
|
expect(lettings_log_to_fix.town_or_city).to eq("Testford") |
|
|
|
|
expect(lettings_log_to_fix.address_line1_input).to eq("1 Test Street") |
|
|
|
|
expect(lettings_log_to_fix.postcode_full_input).to eq("SW1 2BB") |
|
|
|
|
|
|
|
|
|
task.invoke |
|
|
|
|
|
|
|
|
|
lettings_log_to_fix.reload |
|
|
|
|
|
|
|
|
|
expect(lettings_log_to_fix.postcode_full).to eq(lettings_log_to_fix.postcode_full_input) |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
it "does not update logs that do not meet the criteria" do |
|
|
|
|
task.invoke |
|
|
|
|
|
|
|
|
|
lettings_log_not_to_fix.reload |
|
|
|
|
|
|
|
|
|
expect(lettings_log_not_to_fix.postcode_full).to be_nil |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|