2011-09-17 13 views
1

私は、次の検証mathodのためのテストを実行する必要があり、私は\方法を知っていただきたいと思いRailsの3.0.9とRSpecの2にルビーを使用しています:条件検証をテストするにはどうしたらいいですか?

class User < ActiveRecord::Base 
    validates :firstname, :unless => :condition, 
    :presence => true, 
    ... 
end 

私は:unless => :condition一部を意味します。

答えて

3

条件を満たす、または満たさないオブジェクトを作成し、条件が有効か無効かを確認します。

9

あなたはアクティブモデルでshoulda matchersを使用して、このような検証をテストしていることを前提としています。 (用:ケースでない限り)

context "testing validations" do 
    subject do 
    #Create object satisfying :condition 
    end 
    should_not validate_presence_of :first name 
end 

その場合には

、あなたは常にあなたのようなあなたのすべき「アサーション」の前に「件名」ブロックを使用しての検証をテストするもののインスタンスを制御することができます上記の対象事例。

関連する問題