lib/decidim/dev/test/factories.rb in decidim-dev-0.28.0 vs lib/decidim/dev/test/factories.rb in decidim-dev-0.28.1
- old
+ new
@@ -2,56 +2,66 @@
require "decidim/components/namer"
FactoryBot.define do
factory :dummy_component, parent: :component do
- name { Decidim::Components::Namer.new(participatory_space.organization.available_locales, :surveys).i18n_name }
+ transient do
+ skip_injection { false }
+ end
+ name { generate_component_name(participatory_space.organization.available_locales, :surveys, skip_injection:) }
manifest_name { :dummy }
end
factory :dummy_resource, class: "Decidim::Dev::DummyResource" do
transient do
+ skip_injection { false }
users { nil }
# user_groups correspondence to users is by sorting order
user_groups { [] }
end
- title { Decidim::Faker::Localized.localized { generate(:name) } }
- component { create(:component, manifest_name: "dummy") }
- author { create(:user, :confirmed, organization: component.organization) }
- scope { create(:scope, organization: component.organization) }
+ title { generate_localized_title(:dummy_resource_title, skip_injection:) }
+ component { create(:dummy_component, skip_injection:) }
+ author { create(:user, :confirmed, organization: component.organization, skip_injection:) }
+ scope { create(:scope, organization: component.organization, skip_injection:) }
trait :published do
published_at { Time.current }
end
trait :with_endorsements do
- after :create do |resource|
+ after :create do |resource, evaluator|
5.times.collect do
- create(:endorsement, resource:, author: build(:user, organization: resource.component.organization))
+ create(:endorsement, resource:, skip_injection: evaluator.skip_injection,
+ author: build(:user, organization: resource.component.organization, skip_injection: evaluator.skip_injection))
end
end
end
end
factory :nested_dummy_resource, class: "Decidim::Dev::NestedDummyResource" do
+ transient do
+ skip_injection { false }
+ end
title { generate(:name) }
dummy_resource { create(:dummy_resource) }
end
factory :coauthorable_dummy_resource, class: "Decidim::Dev::CoauthorableDummyResource" do
+ transient do
+ skip_injection { false }
+ authors_list { [create(:user, organization: component.organization, skip_injection:)] }
+ end
title { generate(:name) }
component { create(:component, manifest_name: "dummy") }
- transient do
- authors_list { [create(:user, organization: component.organization)] }
- end
-
after :build do |resource, evaluator|
evaluator.authors_list.each do |coauthor|
resource.coauthorships << if coauthor.is_a?(Decidim::UserGroup)
- build(:coauthorship, author: coauthor.users.first, user_group: coauthor, coauthorable: resource, organization: evaluator.component.organization)
+ build(:coauthorship, author: coauthor.users.first, user_group: coauthor, coauthorable: resource,
+ organization: evaluator.component.organization, skip_injection: evaluator.skip_injection)
else
- build(:coauthorship, author: coauthor, coauthorable: resource, organization: evaluator.component.organization)
+ build(:coauthorship, author: coauthor, coauthorable: resource, organization: evaluator.component.organization,
+ skip_injection: evaluator.skip_injection)
end
end
end
end
end