1 # frozen_string_literal: true
3 pass_crypt = PasswordHash.create("test").first
7 sequence(:email) { |n| "user#{n}@example.com" }
8 sequence(:display_name) { |n| "User #{n}" }
9 pass_crypt { pass_crypt }
11 # These attributes are not the defaults, but in most tests we want
12 # a 'normal' user who can log in without being redirected etc.
13 after(:build) do |user, _evaluator|
18 terms_agreed { Time.now.utc }
21 trait :with_home_location do
22 home_lat { rand(-90.0...90.0) }
23 home_lon { rand(-180.0...180.0) }
27 after(:build) do |user, _evaluator|
37 after(:build) do |user, _evaluator|
43 after(:build) do |user, _evaluator|
49 after(:build) do |user, _evaluator|
54 factory :importer_user do
55 after(:create) do |user, _evaluator|
56 create(:user_role, :role => "importer", :user => user)
60 factory :moderator_user do
61 after(:create) do |user, _evaluator|
62 create(:user_role, :role => "moderator", :user => user)
66 factory :administrator_user do
67 after(:create) do |user, _evaluator|
68 create(:user_role, :role => "administrator", :user => user)
72 factory :super_user do
73 after(:create) do |user, _evaluator|
74 UserRole::ALL_ROLES.each do |role|
75 create(:user_role, :role => role, :user => user)