Files
danbooru/test/factories/user.rb
2022-10-21 20:52:31 +02:00

42 lines
968 B
Ruby

FactoryBot.define do
factory(:user, aliases: [:creator, :updater]) do
name { SecureRandom.uuid.first(20) }
password {"password"}
level {20}
last_logged_in_at {Time.now}
factory(:banned_user) do
transient { ban_duration {3} }
is_banned {true}
active_ban factory: :ban
end
factory(:restricted_user) do
level {User::Levels::RESTRICTED}
requires_verification { true }
is_verified { false }
end
User.level_hash.each do |level_name, level_value|
# allows create(:moderator_user), create(:approver) etc
next if level_name == "Restricted" # already defined above
factory(level_name.downcase) do
level {level_value}
end
factory("#{level_name.downcase}_user") do
level {level_value}
end
end
factory(:mod_user) do
level {User::Levels::MODERATOR}
end
factory(:uploader) do
created_at { 2.weeks.ago }
end
end
end