Ruby Noob - 我搜索过 SO,阅读Rails Guide on Testing并观看了RailsCast,但运气不佳。
我无法协调方法关联与我编写的测试。目前(下面的代码),两个测试,一个检查姓名的存在和一个检查电子邮件的存在,没有失败或错误地通过——好的,看起来不错。
如果我从模型中删除两个 validates 语句,那么两个测试都会失败——这也是有道理的。
但是,如果我只删除其中一个
validates :name, :presence => true
或者
validates :email, :presence => true
从模型来看,两个测试都通过了,没有失败。这个结果对我来说没有意义。我是否创建了错误的测试?
user.rb 模型:
class User < ActiveRecord::Base
attr_accessible :email, :name
has_many :connections
validates :name, :presence => true
validates :email, :presence => true
end
测试/单元/user_test.rb
require 'test_helper'
class UserTest < ActiveSupport::TestCase
test "a user should have a name" do
user = User.new
assert !user.save
end
test "a user should have an email" do
user = User.new
assert !user.save
end
end