Как смоделировать модель запроса Django в юнит-тесте без доступа к базе данных? - PullRequest
0 голосов
/ 20 ноября 2018

У меня есть следующая функция:

def build_dict():
    app_config = {}
    for keypair in models.Applify.objects.all():
        app_config.update({keypair.key: keypair.value})

    return app_config

Я пытаюсь создать тестовый файл, в котором я подделываю набор запросов Applify. Пока что у меня не работает вот что:

test_mock_list = [
    mock.Mock(id=1, key='something_1', value=False),
    mock.Mock(id=2, key='something_2', value=False)
]

with mock.patch('models.Applify.objects.all', return_value=test_mock_list):
    # perform assertion test.

Я получаю сообщение об ошибке. Failed: Database access not allowed, use the "django_db" mark, or the "db" or "transactional_db" fixtures to enable it.

Я не пытаюсь подключиться к базе данных, поэтому я не хочу использовать декоратор @pytest.mark.django_db. Так как я могу успешно подделать набор запросов?

...