def test_notify_reminders(order_reminders: QuerySet): """Should notify reminders.""" with mock.patch("orders.services.Messenger.send") as send: reminder: OrderReminder = order_reminders.first() reminder.order.start_datetime = arrow.utcnow().shift(hours=-1).datetime reminder.order.save() reminder.is_reminded = False reminder.save() reminder = order_reminders.last() reminder.order.start_datetime = arrow.utcnow().shift(hours=-1).datetime reminder.order.save() reminder.is_reminded = False reminder.save() assert OrderReminder.objects.get_for_notification().count() == 2 notify_reminders(OrderReminder) send.assert_called_with( user=reminder.recipient, subject=_(reminder.subject), template=reminder.template, context=reminder.get_data(), ) send.call_count = 2
def test_generate_future_availability_slots_task( professionals: QuerySet, services: QuerySet, mocker: MockFixture, ): """Should generate future availability slots.""" professionals_generator = mocker.patch( "schedule.availability.tasks.generate_for_professional") services_generator = mocker.patch( "schedule.availability.tasks.generate_for_service") generate_future_availability_slots_task.apply_async() assert professionals_generator.call_count == professionals.count() assert services_generator.call_count == services.filter( is_base_schedule=False).count() professionals_generator.assert_called_with( professionals.last(), append_days=True, ) services_generator.assert_called_with( services.filter(is_base_schedule=False).last(), append_days=True, )