Как смоделировать вложенную декорированную функцию в Python? - PullRequest
0 голосов
/ 26 марта 2020

У меня есть следующий python файл flow.py

from viewflow.flow import flow_job
from celery import shared_task

@shared_task
@flow_job
def populate_proxmox_info(activation):
    ...

В модульном тесте я хотел бы высмеять этот populate_proxmox_info метод. Основываясь на этом ответе , я пытался издеваться так:

from flow import flow_job

class TestCase1(TestCase):

    @patch.object(flow_job, 'populate_proxmox_info')
    def test_auto_change(self, *args):
        ...

Но он жалуется AttributeError: <function flow_job at 0x1121ce840> does not have the attribute 'populate_proxmox_info'

Также пытался

@patch('viewflow.flow.flow_job.populate_proxmox_info') 
# and
@patch('flows.flow_job.populate_proxmox_info')

получает ту же ошибку

...