mirror of
https://github.com/ENSL/ensl.org.git
synced 2024-12-27 04:51:14 +00:00
68 lines
1.7 KiB
Ruby
Executable file
68 lines
1.7 KiB
Ruby
Executable file
# == Schema Information
|
|
#
|
|
# Table name: users
|
|
#
|
|
# id :integer not null, primary key
|
|
# birthdate :date
|
|
# country :string(255)
|
|
# email :string(255)
|
|
# firstname :string(255)
|
|
# lastip :string(255)
|
|
# lastname :string(255)
|
|
# lastvisit :datetime
|
|
# password :string(255)
|
|
# password_hash :integer default(0)
|
|
# public_email :boolean default(FALSE), not null
|
|
# steamid :string(255)
|
|
# time_zone :string(255)
|
|
# username :string(255)
|
|
# version :integer
|
|
# created_at :datetime
|
|
# updated_at :datetime
|
|
# team_id :integer
|
|
#
|
|
# Indexes
|
|
#
|
|
# index_users_on_lastvisit (lastvisit)
|
|
# index_users_on_team_id (team_id)
|
|
#
|
|
|
|
require 'rails_helper'
|
|
|
|
describe User do
|
|
let!(:user) { create :user }
|
|
|
|
describe "#banned?" do
|
|
it "returns false if user is not banned" do
|
|
expect(user.banned?).to be_falsey
|
|
end
|
|
|
|
it "returns true if user is banned" do
|
|
Ban.create!(ban_type: Ban::TYPE_SITE,
|
|
expiry: Time.now.utc + 10.days,
|
|
user_name: user.username)
|
|
|
|
expect(user.banned?).to be_truthy
|
|
end
|
|
|
|
it "returns true for specific bans" do
|
|
Ban.create!(ban_type: Ban::TYPE_MUTE,
|
|
expiry: Time.now.utc + 10.days,
|
|
user_name: user.username)
|
|
|
|
expect(user.banned? Ban::TYPE_MUTE).to be_truthy
|
|
end
|
|
end
|
|
|
|
describe "#gather_moderator?" do
|
|
let!(:group) { create :group, :gather_moderator }
|
|
|
|
it "returns true if gather moderator" do
|
|
create :grouper, group: group, user: user
|
|
expect(user.gather_moderator?).to eq(true)
|
|
end
|
|
it "returns false if not gather moderator" do
|
|
expect(user.gather_moderator?).to eq(false)
|
|
end
|
|
end
|
|
end
|