बस यह सोचने के लिए कि एक्शनमेलर अनुरोधों का परीक्षण कैसे किया जाता है वास्तव में rspec में देरी_job que को भेजा जाता है।रेल/रुपेक: परीक्षण देरी_job मेल
मुझे लगता है कि यह काफी सरल था, लेकिन मेरी देरी_job कतार बढ़ती प्रतीत नहीं होती है। नीचे दिए गए कोड:
नियंत्रक:
def create
@contact = Contact.new(params[:contact])
if @contact.save
contactmailer = ContactMailer
contactmailer.delay.contact_message(@contact)
redirect_to(contacts_url)
else
render :action => "new"
end
युक्ति:
it "queues mail when a contact is created" do
expectedcount = Delayed::Job.count + 1
Contact.stub(:new).with(mock_contact()) { mock_contact(:save => true) }
post :create, :contact => mock_contact
expectedcount.should eq(Delayed::Job.count)
end
दोनों से पहले और नियंत्रक करने के लिए बुलाया गया, विलंबित :: Job.count रिटर्न 0. मैं लेने की कोशिश की है नियंत्रक के सशर्त आउट, लेकिन मुझे अभी भी देरी की नौकरी की गणना में वृद्धि नहीं हो सकती है।
किसी भी सराहना सुझाव - जयकार
मैं इस तरह से पसंद है। ध्यान दें कि पूर्णता के लिए आपको भी (अलग से) परीक्षण करना चाहिए कि देरी की नौकरियों में देरी की नौकरियां शामिल हो रही हैं। – brittohalloran
यह चालाक है - धन्यवाद! – jpwynn