25 lines
680 B
Ruby
25 lines
680 B
Ruby
# frozen_string_literal: true
|
|
|
|
FactoryBot.define do
|
|
factory :project_member do
|
|
user
|
|
project
|
|
maintainer
|
|
|
|
trait(:guest) { access_level { ProjectMember::GUEST } }
|
|
trait(:reporter) { access_level { ProjectMember::REPORTER } }
|
|
trait(:developer) { access_level { ProjectMember::DEVELOPER } }
|
|
trait(:maintainer) { access_level { ProjectMember::MAINTAINER } }
|
|
trait(:access_request) { requested_at { Time.now } }
|
|
|
|
trait(:invited) do
|
|
user_id { nil }
|
|
invite_token { 'xxx' }
|
|
invite_email { 'email@email.com' }
|
|
end
|
|
|
|
trait :blocked do
|
|
after(:build) { |project_member, _| project_member.user.block! }
|
|
end
|
|
end
|
|
end
|