Mám pracovníka na pozadí, ktorý je zodpovedný za odosielanie niektorých e-mailov.
Ako mám povedať, že tento pracovník počas testov nebol spustený? Obsahuje rámec nejaký konfiguračný parameter alebo pracovníka, ktorý by som mohol použiť?
MiddleMan.worker(:emails_worker).async_send_mails(:arg => {:emails => emails})
odpovede:
1 pre odpoveď č. 1Povedal by som, že to vo vašich testoch vyruší.
Ak používate rspec (ospravedlňujem sa čo najlepšie vieme), potom by som:
Middleman.stub!(:worker)
vo vašom pred bloku a umožní vám to volať a môžete otestovať, že sa to nazýva tak
Middleman.should_receive(:worker).with(YOUR_ARGS_HERE)
ale nebude fungovať.
Na druhej strane by som tiež povedal, že BackgroundRb nie je moderná technológia a teraz sú oveľa lepšie riešenia pre pracovníkov na pozadí. Chcel by som povedať, pozrieť sa na niečo ako oneskorené zamestnanie.