Prevent Rates from being destroyed if they are locked. #1919
This commit is contained in:
@@ -7,6 +7,7 @@ class Rate < ActiveRecord::Base
|
||||
validates_presence_of :date_in_effect
|
||||
|
||||
before_save :unlocked?
|
||||
before_destroy :unlocked?
|
||||
|
||||
named_scope :history_for_user, lambda { |user|
|
||||
{
|
||||
|
||||
@@ -100,3 +100,24 @@ describe Rate, 'save' do
|
||||
rate.save.should eql(false)
|
||||
end
|
||||
end
|
||||
|
||||
describe Rate, 'destroy' do
|
||||
include RateSpecHelper
|
||||
|
||||
it 'should destroy the Rate if it is not locked' do
|
||||
rate = Rate.create(rate_valid_attributes)
|
||||
rate.stub!(:locked?).and_return(false)
|
||||
proc {
|
||||
rate.destroy
|
||||
}.should change(Rate, :count).by(-1)
|
||||
|
||||
end
|
||||
|
||||
it 'should not delete the Rate if it is locked' do
|
||||
rate = Rate.create(rate_valid_attributes)
|
||||
rate.stub!(:locked?).and_return(true)
|
||||
proc {
|
||||
rate.destroy
|
||||
}.should_not change(Rate, :count)
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user