У меня есть конечная точка API для регистрации нового пользователя. «Приветственное письмо» будет поставлено в очередь и выполнит эту задачу асинхронно. У меня есть 2 модульных теста для проверки:
- Api сохраняет информацию о пользователе в БД. OK
- Задача Celery отправляет электронное письмо с правильным содержанием + шаблон
Я хочу добавить 3-й модульный тест , чтобы обеспечить"Конечная точка должна поставить в очередь отправку электронной почты после сохранения формы пользователя в БД"
Я пытаюсь с сельдереем. AsyncResult, но он просит меня запустить рабочий. Более того, даже если работник готов, мы все еще не можем проверить, была ли поставлена задача в очередь или нет, потому что неоднозначное состояние PENDING:
- Задача существует в очереди, но еще не выполнена: PENDING
- Задача не существует в очереди: В ОЖИДАНИИ
Кто-нибудь сталкивается с этой проблемой? Как мне это решить?