尝试在我的测试中激活Django信号

时间:2017-04-10 13:31:35

标签: python django django-signals

嘿我试图在我的测试中激活一个信号 - 但我似乎无法使它工作。

这是我的收件人

@receiver(post_save, sender=models.Allocation, dispatch_uid="close_overdue_invoice_tasks")

那么如何“激活”它以便调用方法:

def close_overdue_invoice_tasks(sender, **kwargs):
    ...

所有信号都有效,我的猜测是你在运行测试时手动激活信号。

我正在使用Pytest。

1 个答案:

答案 0 :(得分:1)

保存附加到的模型时,将调用您的信号。在这种情况下,在.save()的实例上调用Allocation将导致调用信号。

您不应该激活信号,它们应该已经设置好了。检查信号的定义位置,并确保在测试运行期间执行这些信号。