mirror of
https://github.com/fluent/fluentd-ui.git
synced 2025-08-13 01:37:10 +02:00
model spec
This commit is contained in:
parent
e19ce05525
commit
1f8dd17c43
1
Gemfile
1
Gemfile
@ -8,4 +8,5 @@ group :development, :test do
|
||||
gem "rake"
|
||||
gem "pry"
|
||||
gem "rspec-rails", "~> 2.0"
|
||||
gem "factory_girl_rails"
|
||||
end
|
||||
|
@ -61,6 +61,11 @@ GEM
|
||||
unf (>= 0.0.5, < 1.0.0)
|
||||
erubis (2.7.0)
|
||||
execjs (2.0.2)
|
||||
factory_girl (4.4.0)
|
||||
activesupport (>= 3.0.0)
|
||||
factory_girl_rails (4.4.1)
|
||||
factory_girl (~> 4.4.0)
|
||||
railties (>= 3.0.0)
|
||||
fluentd (0.10.46)
|
||||
cool.io (>= 1.1.1, < 2.0.0, != 1.2.0)
|
||||
http_parser.rb (>= 0.5.1, < 0.7.0)
|
||||
@ -188,6 +193,7 @@ PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
factory_girl_rails
|
||||
fluentd-ui!
|
||||
pry
|
||||
rake
|
||||
|
@ -1,6 +1,9 @@
|
||||
class User < ActiveRecord::Base
|
||||
has_secure_password
|
||||
|
||||
validates :name, uniqueness: true, presence: true
|
||||
validates :remember_token, uniqueness: true, allow_nil: true
|
||||
|
||||
def generate_remember_token
|
||||
begin
|
||||
token = SecureRandom.base64(32)
|
||||
|
7
spec/factories/user.rb
Normal file
7
spec/factories/user.rb
Normal file
@ -0,0 +1,7 @@
|
||||
FactoryGirl.define do
|
||||
factory :user do
|
||||
sequence(:name) {|n| "user#{n}" }
|
||||
password "passw0rd"
|
||||
password_confirmation "passw0rd"
|
||||
end
|
||||
end
|
@ -1,5 +1,56 @@
|
||||
require 'spec_helper'
|
||||
|
||||
describe User do
|
||||
pending "add some examples to (or delete) #{__FILE__}"
|
||||
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
|
||||
|
Loading…
Reference in New Issue
Block a user