Browse Source

Add availability to the merged org options

pull/1819/head
Kat 3 years ago
parent
commit
b1219bd7fa
  1. 6
      app/models/form/lettings/questions/managing_organisation.rb
  2. 23
      spec/models/form/lettings/questions/managing_organisation_spec.rb

6
app/models/form/lettings/questions/managing_organisation.rb

@ -30,9 +30,13 @@ class Form::Lettings::Questions::ManagingOrganisation < ::Form::Question
orgs = if user.support?
log.owning_organisation.managing_agents
else
user.organisation.managing_agents + user.organisation.absorbed_organisations
user.organisation.managing_agents
end.pluck(:id, :name).to_h
user.organisation.absorbed_organisations.each do |absorbed_org|
opts[absorbed_org.id] = "#{absorbed_org.name} (active until #{absorbed_org.merge_date.to_fs(:govuk_date)})"
end
opts.merge(orgs)
end

23
spec/models/form/lettings/questions/managing_organisation_spec.rb

@ -161,6 +161,29 @@ RSpec.describe Form::Lettings::Questions::ManagingOrganisation, type: :model do
expect(question.displayed_answer_options(log, user)).to eq(options)
end
end
context "when organisation has merged" do
let(:absorbing_org) { create(:organisation, name: "Absorbing org", holds_own_stock: true) }
let!(:merged_org) { create(:organisation, name: "Merged org", holds_own_stock: false) }
let(:user) { create(:user, :data_coordinator, organisation: absorbing_org) }
let(:log) do
merged_org.update!(merge_date: Time.zone.local(2023, 8, 2), absorbing_organisation_id: absorbing_org.id)
create(:lettings_log, owning_organisation: absorbing_org, managing_organisation: nil)
end
let(:options) do
{
"" => "Select an option",
absorbing_org.id => "Absorbing org (Your organisation)",
merged_org.id => "Merged org (active until 2 August 2023)",
}
end
it "displays merged organisation on the list of choices" do
expect(question.displayed_answer_options(log, user)).to eq(options)
end
end
end
it "is marked as derived" do

Loading…
Cancel
Save