shoulda-matchers + rspec を使用して ActiveRecord クラスをテストしている場合は、次のようにすることができます。
class PersonAsActiveRecord < ActiveRecord::Base
validates :title, :presence => true
end
describe PersonAsActiveRecord do
subject { PersonAsActiveRecord.new(:title => 'Lt Wiggles') }
it { should validate_presence_of(:title) }
end
ただし、これが機能しないように思われる場合は、次のようにします。
class PersonAsJustClass
include ActiveModel::Validations
attr_accessor :title
validates :title, :presence => true
end
describe PersonAsJustClass do
subject { PersonAsJustClass.new(:title => 'Lt Wiggles') }
it { should validate_presence_of(:title) }
end
これはなぜですか?それとも私は何か間違ったことをしていますか?