Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 测试存在性:Rails中的真实验证_Ruby On Rails_Ruby On Rails 3_Unit Testing - Fatal编程技术网

Ruby on rails 测试存在性:Rails中的真实验证

Ruby on rails 测试存在性:Rails中的真实验证,ruby-on-rails,ruby-on-rails-3,unit-testing,Ruby On Rails,Ruby On Rails 3,Unit Testing,在我的持有者测试文件中: test "name must be present" do holder = Holder.new(name: "name") assert holder.valid? end test "name must not be blank" do h = Holder.new(name: " ") assert !h.valid? end test "name must not be nil" do h = Holder.new(n

在我的持有者测试文件中:

 test "name must be present" do
  holder = Holder.new(name: "name")
  assert holder.valid?
 end

 test "name must not be blank" do
  h = Holder.new(name: "    ")
  assert !h.valid?
 end

 test "name must not be nil" do
  h = Holder.new(name: nil)
  assert !h.valid?
 end
我的支架型号如下所示:

class Holder < ActiveRecord::Base
  attr_accessible :description, :name, :user_id

  validates_length_of :name, maximum: 75
  validates_length_of :description, maximum: 250

  validate :name, presence: true
end
类持有者

但是,当我运行测试时,最后两次验证仍然是红色的。我需要做些什么来测试它们,使它们变成绿色?

您在
验证中忘记了
s
。它必须是:

validates :name, presence: true
验证
验证
是完全不同的方法


请参见:.

您在
验证中忘记了
s
。它必须是:

validates :name, presence: true
验证
验证
是完全不同的方法


请看:。

非常感谢!我应该早点问的,我一直在为此发火!非常感谢!我应该早点问的,我一直在为此发火!