Browse Source

Update tests

pull/3004/head
Manny Dinssa 5 months ago
parent
commit
fa9191362d
  1. 76
      spec/lib/tasks/update_manual_address_entry_selected_prexisting_logs_spec.rb

76
spec/lib/tasks/update_manual_address_entry_selected_prexisting_logs_spec.rb

@ -1,7 +1,13 @@
require "rails_helper" require "rails_helper"
require "rake" 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(:task) { Rake::Task["bulk_update:update_manual_address_entry_selected"] }
let(:lettings_log_uprn_entered) do 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)) build(:sales_log, :completed_without_uprn, saledate: Time.zone.local(2024, 12, 30))
end 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 running the task" do
context "when logs do not meet the criteria" do context "when logs do not meet the criteria" do
before do before do
lettings_log_uprn_found.save!(validate: false) lettings_log_uprn_found.save!(validate: false)
lettings_log_uprn_entered.save!(validate: false) lettings_log_uprn_entered.save!(validate: false)
lettings_log_address_fields_not_entered.save!(validate: false) lettings_log_address_fields_not_entered.save!(validate: false)
sales_log_uprn_found.save!(validate: false) sales_log_uprn_found.save!(validate: false)
sales_log_uprn_entered.save!(validate: false) sales_log_uprn_entered.save!(validate: false)
sales_log_address_fields_not_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 it "does not update logs with a UPRN entered" do
task.invoke task.invoke
lettings_log_uprn_entered.reload lettings_log_uprn_entered.reload
sales_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.manual_address_entry_selected).to be false
expect(lettings_log_uprn_entered.uprn).to eq("10033558653") expect(lettings_log_uprn_entered.uprn).to eq("10033558653")
expect(sales_log_uprn_entered.manual_address_entry_selected).to be false 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 it "does not update logs with a UPRN found" do
task.invoke task.invoke
lettings_log_uprn_found.reload lettings_log_uprn_found.reload
sales_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.manual_address_entry_selected).to be false
expect(lettings_log_uprn_found.uprn).to eq("10033558653") expect(lettings_log_uprn_found.uprn).to eq("10033558653")
expect(sales_log_uprn_found.manual_address_entry_selected).to be false 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 it "does not update logs with no UPRN or address fields entered" do
task.invoke task.invoke
lettings_log_address_fields_not_entered.reload lettings_log_address_fields_not_entered.reload
sales_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(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 expect(sales_log_address_fields_not_entered.manual_address_entry_selected).to be false
end end
@ -85,6 +93,7 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
before do before do
lettings_log_address_manually_entered.manual_address_entry_selected = false lettings_log_address_manually_entered.manual_address_entry_selected = false
lettings_log_address_manually_entered.save!(validate: false) lettings_log_address_manually_entered.save!(validate: false)
sales_log_address_manually_entered.manual_address_entry_selected = false sales_log_address_manually_entered.manual_address_entry_selected = false
sales_log_address_manually_entered.save!(validate: false) sales_log_address_manually_entered.save!(validate: false)
end 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.address_line2).to eq("Testville")
expect(lettings_log_address_manually_entered.town_or_city).to eq("Testford") 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(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.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_line1).to eq("1 Test Street")
expect(sales_log_address_manually_entered.address_line2).to eq("Testville") 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") expect(sales_log_address_manually_entered.postcode_full).to eq("SW1 1AA")
task.invoke task.invoke
lettings_log_address_manually_entered.reload lettings_log_address_manually_entered.reload
sales_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.address_line2).to eq("Testville")
expect(lettings_log_address_manually_entered.town_or_city).to eq("Testford") 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(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.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_line1).to eq("1 Test Street")
expect(sales_log_address_manually_entered.address_line2).to eq("Testville") 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 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

Loading…
Cancel
Save