Browse Source

Update tests

pull/3003/head
Manny Dinssa 4 days ago
parent
commit
2adcab077e
  1. 16
      spec/factories/lettings_log.rb
  2. 16
      spec/factories/sales_log.rb
  3. 96
      spec/lib/tasks/update_manual_address_entry_selected_prexisting_logs_spec.rb

16
spec/factories/lettings_log.rb

@ -220,5 +220,21 @@ FactoryBot.define do
instance.save!(validate: false)
end
end
trait :completed_without_uprn do
completed
manual_address_entry_selected { false }
after(:build) do |log|
log.uprn = nil
log.uprn_selection = nil
log.uprn_known = 0
end
after(:build) do |log|
log.address_line1 = "1 Test Street"
log.address_line2 = "Testville"
log.town_or_city = "Testford"
log.postcode_full = "SW1 1AA"
end
end
end
end

16
spec/factories/sales_log.rb

@ -235,5 +235,21 @@ FactoryBot.define do
instance.save!(validate: false)
end
end
trait :completed_without_uprn do
completed
manual_address_entry_selected { false }
after(:build) do |log|
log.uprn = nil
log.uprn_selection = nil
log.uprn_known = 0
end
after(:build) do |log|
log.address_line1 = "1 Test Street"
log.address_line2 = "Testville"
log.town_or_city = "Testford"
log.postcode_full = "SW1 1AA"
end
end
end
end

96
spec/lib/tasks/update_manual_address_entry_selected_prexisting_logs_spec.rb

@ -1,4 +1,3 @@
# spec/tasks/update_manual_address_entry_selected_prexisting_logs_spec.rb
require "rails_helper"
require "rake"
@ -6,78 +5,27 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
let(:task) { Rake::Task["bulk_update:update_manual_address_entry_selected"] }
let(:lettings_log_uprn_entered) do
create(:lettings_log, :completed,
needstype: 1,
manual_address_entry_selected: false,
uprn: "123",
address_line1: nil,
address_line2: nil,
town_or_city: nil,
postcode_full: nil,
address_line1_input: nil,
postcode_full_input: nil)
build(:lettings_log, :completed, startdate: Time.zone.local(2024, 6, 1), needstype: 1, manual_address_entry_selected: false)
end
let(:lettings_log_uprn_found) do
create(:lettings_log, :completed,
needstype: 1,
manual_address_entry_selected: false,
uprn: "123",
address_line1: nil,
address_line2: nil,
town_or_city: nil,
postcode_full: nil,
address_line1_input: "1 Test Street",
postcode_full_input: "SW1 1AA")
build(:lettings_log, :completed, startdate: Time.zone.local(2024, 9, 1), needstype: 1, manual_address_entry_selected: false, address_line1_input: "1 Test Street", postcode_full_input: "SW1 1AA")
end
let(:lettings_log_address_manually_entered) do
create(:lettings_log, :completed,
needstype: 1,
manual_address_entry_selected: false,
uprn: nil,
address_line1: "1 Test Street",
address_line2: "Testville",
town_or_city: "Testford",
postcode_full: "SW1 1AA",
address_line1_input: nil,
postcode_full_input: nil)
build(:lettings_log, :completed_without_uprn, startdate: Time.zone.local(2024, 12, 1), needstype: 1, manual_address_entry_selected: false)
end
let(:sales_log_uprn_entered) do
create(:sales_log, :completed,
manual_address_entry_selected: false,
uprn: "123",
address_line1: nil,
address_line2: nil,
town_or_city: nil,
postcode_full: nil,
address_line1_input: nil,
postcode_full_input: nil)
build(:sales_log, :completed, saledate: Time.zone.local(2024, 12, 1), manual_address_entry_selected: false)
end
let(:sales_log_uprn_found) do
create(:sales_log, :completed,
manual_address_entry_selected: false,
uprn: "123",
address_line1: nil,
address_line2: nil,
town_or_city: nil,
postcode_full: nil,
address_line1_input: "1 Test Street",
postcode_full_input: "SW1 1AA")
build(:sales_log, :completed, saledate: Time.zone.local(2024, 7, 1), manual_address_entry_selected: false, address_line1_input: "1 Test Street", postcode_full_input: "SW1 1AA")
end
let(:sales_log_address_manually_entered) do
create(:sales_log, :completed,
manual_address_entry_selected: false,
uprn: nil,
address_line1: "1 Test Street",
address_line2: "Testville",
town_or_city: "Testford",
postcode_full: "SW1 1AA",
address_line1_input: nil,
postcode_full_input: nil)
build(:sales_log, :completed_without_uprn, saledate: Time.zone.local(2024, 12, 30), manual_address_entry_selected: false)
end
before do
@ -87,14 +35,21 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
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)
sales_log_uprn_found.save!(validate: false)
sales_log_uprn_entered.save!(validate: false)
end
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("123")
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.uprn).to eq("123")
expect(sales_log_uprn_entered.uprn).to eq("10033558653")
end
it "does not update logs with a UPRN found" do
@ -102,17 +57,34 @@ RSpec.describe "bulk_update:update_manual_address_entry_selected", type: :task d
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("123")
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.uprn).to eq("123")
expect(sales_log_uprn_found.uprn).to eq("10033558653")
end
end
context "when logs do meet the criteria" do
before do
lettings_log_address_manually_entered.save!(validate: false)
sales_log_address_manually_entered.save!(validate: false)
end
it "updates logs with an address manually entered" do
expect(lettings_log_address_manually_entered.manual_address_entry_selected).to be false
expect(lettings_log_address_manually_entered.address_line1).to eq("1 Test Street")
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")
expect(sales_log_address_manually_entered.town_or_city).to eq("Testford")
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
expect(lettings_log_address_manually_entered.manual_address_entry_selected).to be true
expect(lettings_log_address_manually_entered.address_line1).to eq("1 Test Street")
expect(lettings_log_address_manually_entered.address_line2).to eq("Testville")

Loading…
Cancel
Save