Questo è il mio scenario:Come ignorare alcune chiamate allo stesso metodo con argomenti diversi in Rspec?
Dopo aver aggiornato un oggetto AR, viene generato un gruppo di lavori in background con Resque. In mie specifiche sto beffardo la chiamata a Resque # enqueue, qualcosa nelle linee di:
it 'should be published' do
# I need to setup these mocks in many places where I want to mock a specific call to Resque, otherwise it fails
Resque.should_receive(:enqueue).with(NotInterestedJob1, anything)
Resque.should_receive(:enqueue).with(NotInterestedJob2, anything)
Resque.should_receive(:enqueue).with(NotInterestedJob3, anything)
# I'm only interested in mocking this Resque call.
Resque.should_receive(:enqueue).with(PublishJob, anything)
end
Come potete vedere, ho bisogno di prendere in giro tutte le altre chiamate verso Resque # enqueue ogni volta che voglio prendere in giro una specifica call, c'è un modo per prendere in giro solo una chiamata personalizzata e ignorare le altre chiamate con argomenti diversi?
Grazie in anticipo;)
Penso che quello che hai già pubblicato dovrebbe funzionare: qual è il problema? –
Ciao Frederick, il problema era che avevo bisogno di aggiungere tutte quelle schifezze ogni dove quando volevo prendere in giro una chiamata Resque specifica. – rdavila