-include CurrentApiClient
+class CurrentApiClientHelper
+ extend CurrentApiClient
+end
FactoryGirl.define do
factory :user do
- before :create do
- Thread.current[:user_was] = Thread.current[:user]
- Thread.current[:user] = system_user
+ transient do
+ join_groups []
end
- after :create do
- Thread.current[:user] = Thread.current[:user_was]
+ after :create do |user, evaluator|
+ CurrentApiClientHelper.act_as_system_user do
+ evaluator.join_groups.each do |g|
+ Link.create!(tail_uuid: user.uuid,
+ head_uuid: g.uuid,
+ link_class: 'permission',
+ name: 'can_read')
+ Link.create!(tail_uuid: g.uuid,
+ head_uuid: user.uuid,
+ link_class: 'permission',
+ name: 'can_read')
+ end
+ end
end
first_name "Factory"
last_name "Factory"
factory :active_user do
is_active true
after :create do |user|
- act_as_system_user do
+ CurrentApiClientHelper.act_as_system_user do
Link.create!(tail_uuid: user.uuid,
head_uuid: Group.where('uuid ~ ?', '-f+$').first.uuid,
link_class: 'permission',
end
end
end
+ to_create do |instance|
+ CurrentApiClientHelper.act_as_system_user do
+ instance.save!
+ end
+ end
end
end