Created
March 6, 2012 07:18
Revisions
-
osiro created this gist
Mar 6, 2012 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,13 @@ class Driver .... after_destroy :set_new_current_driver_to_insurance_detail protected def set_new_current_driver_to_insurance_detail @insurance_detail = self.insurance_detail @insurance_detail.update_attribute(:current_driver, @insurance_detail.drivers.first) if @insurance_detail.drivers.any? and @insurance_detail.current_driver_id == self.id end end This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,15 @@ describe "#set_new_current_driver_to_insurance_detail" do let(:driver) { Factory :driver } let(:insurance_detail) { Factory :insurance_detail } context "when insurance detail has no more drivers" do before(:each) do driver.update_attribute(:insurance_detail, insurance_detail) insurance_detail.update_attribute(:current_driver, driver) end it "should not change current_driver_id" do driver.destroy expect { insurance_detail }.should_not change { self.current_driver_id } end end end