ユーザモデルのテストケースを作成しようとしています。基本的には、first_nameとlast_nameが存在することを検証します。Rails 3.1 Rspecモデルの検証ケースの作成
私がしようとしているのは、特定のフィールドのエラーが空であるかどうかをチェックすることです。空でなければなりません。しかし、それは常に失敗します。
これを行う正しい方法は何ですか?私user.rbファイルをここで
私のコードは私のuser_spec.rbで
ある
require 'spec_helper'
describe User do
before do
@user = User.new
end
it "must have a first name" do
@user.errors[:first_name].should_not be_empty
end
it "must have a last name" do
@user.errors[:last_name].should_not be_empty
end
end
class User < ActiveRecord::Base
validates :first_name, :presence => true
validates :last_name, :presence => true
end
将来の視聴者のためにUpvoted。検証をテストするために、shoulda matchersはよりエレガントです。 – MikeH
の代わりに 'it 'と記述するのは..." do'それは '{validate_presence_of:firstname}'を使う方が良いでしょう。 – morgents
@moregeekが提案した新しく優れた構文に基づいて答えを更新しました – jake