0
我有兩個型號:的Rails 3.2 RSpec的測試before_destroy鉤子失敗
class Region < ActiveRecord::Base
has_one :acol, :dependent => :nullify
before_destroy :check_acol_presence
private
def check_acol_presence
if acol
errors.add(:base,"activerecord.errors.models.region.delete_with_existing_acol")
return false
end
end
end
class Acol < ActiveRecord::Base
belongs_to :region
end
我要檢查的RSpec測試 'check_acol_presence' 掛鉤。所以這裏是測試代碼:
region = FactoryGirl.create(:region)
acol = FactoryGirl.create(:acol, :region => region)
region.reload
region.destroy
lambda { region.reload }.should_not raise(ActiveRecord::RecordNotFound)
在rails控制檯中這個檢查工作得很好。但測試失敗。爲什麼?
舊的帖子,但它的工作將before_destroy提前has_many ...謝謝! – prodigerati