Django: нет доступа к базе данных из асинхронной функции

Я пишу тесты для своего Django-приложения с использованием asyncio и столкнулся с проблемой доступа к базе данных. Вот минимальный код, воспроизводящий ошибку:

import pytest
from authentication.models import User


@pytest.mark.django_db(transaction=True)
@pytest.mark.asyncio
class TestDatabaseAccess:

    @pytest.fixture(autouse=True)
    def _fixture(self):
        User.objects.create(username='username')

    async def test_main(self):

        async def get_user_async(user_id):
            user = await sync_to_async(User.objects.get)(id=user_id)
            return user

        await get_user_async(1)

Я получаю ошибку:

 def execute(self, query, params=None):
    if params is None:
        return Database.Cursor.execute(self, query)
    query = self.convert_query(query)
   return Database.Cursor.execute(self, query, params)

E django.db.utils.OperationalError: no such table: authentication_customuser

Что я делаю не так?

Мой фикстур работает нормально и имеет доступ к базе данных, я могу вывести всех пользователей из формы. Но асинхронный тест выбрасывает ошибку.

Вернуться на верх