Project

General

Profile

Download (3.01 KB) Statistics
| Branch: | Tag: | Revision:
FactoryBot.define do
factory :environment do
sequence(:name) {|n| "environment#{n}" }
organizations []
locations []
end

factory :environment_class

FactoryBot.define do
factory :lookup_key, class: 'LookupKey' do
sequence(:key) { |n| "param#{n}" }
end

factory :puppetclass_lookup_key, parent: :lookup_key, class: 'PuppetclassLookupKey' do
transient do
overrides({})
end
after(:create) do |lkey, evaluator|
evaluator.overrides.each do |match, value|
FactoryBot.create :lookup_value, :lookup_key_id => lkey.id, :value => value, :match => match, :omit => false
end
lkey.reload
end

trait :with_override do
override true
default_value "default value"
path "comment"
overrides({ "comment=override" => "overridden value" })
end

trait :as_smart_class_param do
transient do
puppetclass nil
end
after(:create) do |lkey, evaluator|
evaluator.puppetclass.environments.each do |env|
FactoryBot.create :environment_class, :puppetclass_id => evaluator.puppetclass.id, :environment_id => env.id, :puppetclass_lookup_key_id => lkey.id
end
end
end

trait :with_omit do
omit true
end
end

factory :variable_lookup_key, parent: :lookup_key, class: 'VariableLookupKey' do
transient do
overrides({})
end
after(:create) do |lkey, evaluator|
evaluator.overrides.each do |match, value|
FactoryBot.create :lookup_value, :lookup_key_id => lkey.id, :value => value, :match => match
end
lkey.reload
end

trait :with_override do
default_value "default value"
path "comment"
overrides({ "comment=override" => "overridden value" })
end
end
end

factory :lookup_value do
sequence(:value) {|n| "value#{n}" }

trait :with_omit do
omit true
end
end

factory :puppetclass do
sequence(:name) {|n| "class#{n}" }

transient do
environments []
end
after(:create) do |pc, evaluator|
evaluator.environments.each do |env|
FactoryBot.create :environment_class, :puppetclass_id => pc.id, :environment_id => env.id unless env.nil?
end
end

trait :with_parameters do
transient do
parameter_count 1
end
after(:create) do |pc, evaluator|
evaluator.parameter_count.times do
evaluator.environments.each do |env|
lkey = FactoryBot.create :puppetclass_lookup_key
FactoryBot.create :environment_class, :puppetclass_id => pc.id, :environment_id => env.id, :puppetclass_lookup_key_id => lkey.id
end
end
end
end
end

factory :config_group do
sequence(:name) {|n| "config_group#{n}" }
transient do
class_environments nil
end

trait :with_puppetclass do
puppetclasses { [ FactoryBot.create(:puppetclass, :environments => class_environments) ] }
end
end
end
(22-22/31)