FactoryBot.define do
factory :organisation do
name { "DLUHC" }
address_line1 { "2 Marsham Street" }
address_line2 { "London" }
provider_type { "LA" }
housing_registration_no { "1234" }
postcode { "SW1P 4DF" }
created_at { Time.zone.now }
updated_at { Time.zone.now }
holds_own_stock { true }
transient do
with_dsa { true }
end
after(:create) do |org, evaluator|
if evaluator.with_dsa
create(
:data_protection_confirmation,
organisation: org,
data_protection_officer: org.users.any? ? org.users.first : create(:user, :data_protection_officer, organisation: org),
)
trait :with_old_visible_id do
old_visible_id { rand(9_999_999).to_s }
trait :prp do
provider_type { "PRP" }
trait :does_not_own_stock do
holds_own_stock { false }
trait :without_dpc do
with_dsa { false }
data_protection_confirmation { nil }
factory :organisation_rent_period do
organisation
rent_period { 2 }