1

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

これはなぜですか?それとも私は何か間違ったことをしていますか?

4

0 に答える 0