2
我有觸發作業的條件回調。如果經理髮生變化,應該調用方法如何使用rspec測試條件ActiveRecord after_update回調?
class Employee < ActiveRecord::Base
after_update :employee_manager_on_change, if: :employee_id_changed?
def employee_manager_on_change
EmployeeManagerChangedJob.perform_later(id)
end
end
我很難測試這個。我需要像
context 'when changing manager' do
subject { user.manager = new_manager }
it 'calls employee_manager_on_change' do
expect { suject.run_callbacks :update }.to receive(:employee_manager_on_change)
end
end
任何人都知道什麼是最好的方法呢?