Ruby on rails 用户模型中的间隙单元测试?

Ruby on rails 用户模型中的间隙单元测试?,ruby-on-rails,ruby,clearance,Ruby On Rails,Ruby,Clearance,所以我一直在绞尽脑汁,也许你们中的一些人对如何为这个用户模型进行适当的单元测试有更好的想法。我的基本单元测试如下所示 test "should not save without name" do user = User.new user.email = "test@test.com" user.password = "letmein" assert !user.save end 这个测试通过了这个模型 class User < ActiveRecord::Base i

所以我一直在绞尽脑汁,也许你们中的一些人对如何为这个用户模型进行适当的单元测试有更好的想法。我的基本单元测试如下所示

test "should not save without name" do
  user = User.new
  user.email = "test@test.com"
  user.password = "letmein"
  assert !user.save
end
这个测试通过了这个模型

class User < ActiveRecord::Base
  include Clearance::User

  validates :name, presence: true

  has_and_belongs_to_many :contests
end
class用户
有没有更好的办法在清关时做到这一点?很好,gem允许你通过任意分配电子邮件和密码来创建这样的用户,但我想也许我不应该这样做

user = User.new(:email => "test@test.com", :password => "letmein")
然后呢,

assert !user.valid?

user.should_not be_valid
expect { user.save }.to change(User, :count).by(0)