fluentd-ui/spec/models/user_spec.rb
2014-05-13 17:02:32 +09:00

57 lines
1.3 KiB
Ruby

require 'spec_helper'
describe User do
let(:user) { FactoryGirl.build(:user) }
describe "#generate_remember_token" do
subject { user.generate_remember_token }
it { User.find_by(remember_token: subject).should be_nil }
end
describe "#valid?" do
it { user.should be_valid }
describe "name" do
it "nil is invalid" do
user.name = nil
user.should_not be_valid
end
it "taken name is invalid" do
another_user = FactoryGirl.create(:user)
user.name = another_user.name
user.should_not be_valid
end
end
describe "password" do
it "password != password_confirmation is invalid" do
user.password = "a"
user.password_confirmation = "b"
user.should_not be_valid
end
end
describe "remember_token" do
let(:token) { "xxx" }
it "nil is valid" do
user.remember_token = nil
user.should be_valid
end
it "nil and taken is valid " do
FactoryGirl.create(:user, remember_token: nil)
user.remember_token = nil
user.should be_valid
end
it "taken token is invalid" do
FactoryGirl.create(:user, remember_token: token)
user.remember_token = token
user.should_not be_valid
end
end
end
end