Патч-мокер патч не исправляет - PullRequest
0 голосов
/ 17 июня 2019

Попытка использовать pytest mocker.patch, однако кажется, что патч фактически не применяется ни в одном из моих тестов.Я неправильно использую mocker?

tests / test_unit.py

import pytest

def test_get_item(self, client, mocker):
        """Tests get api can get item by ID"""
        item = [{'id': 1,
                 'data': 'test'}]
        patch = mocker.patch('helper.import_item_id',
                             return_value=item)
        id = item[0]['id']

        with application.test_request_context():
            res = client.get(url_for('get_item', id=id))
            result = json.loads(res.get_data())

            patch.assert_called_with(id)
            assert res.status_code == 200

helper.py (в корневой папке проекта)

def import_item_id(id):
    """Imports CSV data to df and returns
   a item list' for a given id"""
    items = import_data()
    this_recipe = items.loc[items['id'] == id]
    return this_item.to_dict('records')

Он работает так, как будто макетне был применен, то есть assert_called_with терпит неудачу, и код состояния ответа равен 200.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...