2012-07-01 00:41:14 +02:00
|
|
|
require "spec_helper"
|
|
|
|
|
|
|
|
describe User do
|
|
|
|
it "has a valid username" do
|
|
|
|
expect { User.make!(:username => nil) }.to raise_error
|
|
|
|
expect { User.make!(:username => "") }.to raise_error
|
|
|
|
expect { User.make!(:username => "*") }.to raise_error
|
|
|
|
|
|
|
|
User.make!(:username => "test")
|
|
|
|
expect { User.make!(:username => "test") }.to raise_error
|
|
|
|
end
|
|
|
|
|
|
|
|
it "has a valid email address" do
|
|
|
|
User.make!(:email => "user@example.com")
|
2012-12-17 02:59:34 +01:00
|
|
|
|
|
|
|
# duplicate
|
2012-07-01 00:41:14 +02:00
|
|
|
expect { User.make!(:email => "user@example.com") }.to raise_error
|
2012-12-17 02:59:34 +01:00
|
|
|
|
|
|
|
# bad address
|
|
|
|
expect { User.make!(:email => "user@") }.to raise_error
|
2012-07-01 00:41:14 +02:00
|
|
|
end
|
|
|
|
|
|
|
|
it "authenticates properly" do
|
2012-12-17 02:59:34 +01:00
|
|
|
u = User.make!(:password => "hunter2")
|
2012-07-01 00:41:14 +02:00
|
|
|
|
|
|
|
u.password_digest.length.should > 20
|
|
|
|
|
2012-12-17 02:59:34 +01:00
|
|
|
u.authenticate("hunter2").should == u
|
|
|
|
u.authenticate("hunteR2").should == false
|
2012-07-01 00:41:14 +02:00
|
|
|
end
|
2014-01-18 20:32:57 +01:00
|
|
|
|
|
|
|
it "gets an error message after registering banned name" do
|
|
|
|
expect { User.make!(:username => "admin") }.to raise_error("Validation failed: Username is not permitted")
|
|
|
|
end
|
2014-01-19 15:50:39 +01:00
|
|
|
|
|
|
|
it "shows a user is banned or not" do
|
|
|
|
u = User.make!(:banned)
|
|
|
|
user = User.make!
|
|
|
|
u.is_banned?.should == true
|
|
|
|
user.is_banned?.should == false
|
|
|
|
end
|
|
|
|
|
|
|
|
it "shows a user is active or not" do
|
|
|
|
u = User.make!(:banned)
|
|
|
|
user = User.make!
|
|
|
|
u.is_active?.should == false
|
|
|
|
user.is_active?.should == true
|
|
|
|
end
|
|
|
|
|
|
|
|
it "shows a user is recent or not" do
|
|
|
|
user = User.make!(:created_at => Time.now)
|
|
|
|
u = User.make!(:created_at => Time.now - 8.days)
|
|
|
|
user.is_new?.should == true
|
|
|
|
u.is_new?.should == false
|
|
|
|
end
|
|
|
|
|
|
|
|
it "unbans a user" do
|
|
|
|
u = User.make!(:banned)
|
|
|
|
u.unban!.should be_true
|
|
|
|
end
|
|
|
|
|
2012-07-01 00:41:14 +02:00
|
|
|
end
|