Browse Source

test: refactor managing orgs opts tests for support user case

fix-remove-attr-accessors-from-questions-in-cldc-1723
Sam Seed 2 years ago
parent
commit
bb04ed0d9a
  1. 16
      spec/models/form/lettings/questions/managing_organisation_spec.rb

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

@ -74,13 +74,14 @@ RSpec.describe Form::Lettings::Questions::ManagingOrganisation, type: :model do
end end
end end
context "when user is support and org does own stock" do context "when user is support" do
let(:user) { create(:user, :support) } let(:user) { create(:user, :support) }
let(:log_owning_org) { create(:organisation, name: "Owning org", holds_own_stock: true) } let(:log_owning_org) { create(:organisation, name: "Owning org") }
let(:log) { create(:lettings_log, owning_organisation: log_owning_org, managing_organisation: create(:organisation, name: "Managing org 1"), created_by: nil) } let(:log) { create(:lettings_log, owning_organisation: log_owning_org, managing_organisation: create(:organisation, name: "Managing org 1"), created_by: nil) }
let!(:org_rel1) { create(:organisation_relationship, parent_organisation: log_owning_org, child_organisation: create(:organisation, name: "Managing org 2")) } let!(:org_rel1) { create(:organisation_relationship, parent_organisation: log_owning_org, child_organisation: create(:organisation, name: "Managing org 2")) }
let!(:org_rel2) { create(:organisation_relationship, parent_organisation: log_owning_org, child_organisation: create(:organisation, name: "Managing org 3")) } let!(:org_rel2) { create(:organisation_relationship, parent_organisation: log_owning_org, child_organisation: create(:organisation, name: "Managing org 3")) }
context "when org owns stock" do
let(:options) do let(:options) do
{ {
"" => "Select an option", "" => "Select an option",
@ -92,17 +93,12 @@ RSpec.describe Form::Lettings::Questions::ManagingOrganisation, type: :model do
end end
it "shows current managing agent at top, followed by the current owning organisation (with hint), followed by the managing agents of the current owning organisation" do it "shows current managing agent at top, followed by the current owning organisation (with hint), followed by the managing agents of the current owning organisation" do
log_owning_org.update(holds_own_stock: true)
expect(question.displayed_answer_options(log, user)).to eq(options) expect(question.displayed_answer_options(log, user)).to eq(options)
end end
end end
context "when user is support and org does not own stock" do context "when org does not own stock" do
let(:user) { create(:user, :support) }
let(:log_owning_org) { create(:organisation, name: "Owning org", holds_own_stock: false) }
let(:log) { create(:lettings_log, owning_organisation: log_owning_org, managing_organisation: create(:organisation, name: "Managing org 1"), created_by: nil) }
let!(:org_rel1) { create(:organisation_relationship, parent_organisation: log_owning_org, child_organisation: create(:organisation, name: "Managing org 2")) }
let!(:org_rel2) { create(:organisation_relationship, parent_organisation: log_owning_org, child_organisation: create(:organisation, name: "Managing org 3")) }
let(:options) do let(:options) do
{ {
"" => "Select an option", "" => "Select an option",
@ -113,9 +109,11 @@ RSpec.describe Form::Lettings::Questions::ManagingOrganisation, type: :model do
end end
it "shows current managing agent at top, followed by the managing agents of the current owning organisation" do it "shows current managing agent at top, followed by the managing agents of the current owning organisation" do
log_owning_org.update(holds_own_stock: false)
expect(question.displayed_answer_options(log, user)).to eq(options) expect(question.displayed_answer_options(log, user)).to eq(options)
end end
end end
end
context "when the owning-managing organisation relationship is deleted" do context "when the owning-managing organisation relationship is deleted" do
let(:user) { create(:user, :support) } let(:user) { create(:user, :support) }

Loading…
Cancel
Save