From 6cda453aa0e60e19790b68a6db056d01e60b2921 Mon Sep 17 00:00:00 2001 From: Bekzod Mirahmedov Date: Sun, 3 Mar 2024 14:54:19 +0500 Subject: [PATCH] make test engine autocommit to properly create indexes --- tests/chat/router/test_get_user_chats.py | 2 -- tests/conftest.py | 8 +++++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/chat/router/test_get_user_chats.py b/tests/chat/router/test_get_user_chats.py index dcc6292..af49a68 100644 --- a/tests/chat/router/test_get_user_chats.py +++ b/tests/chat/router/test_get_user_chats.py @@ -20,7 +20,6 @@ async def test_get_user_chats_succeeds_given_chat_exists(authenticated_bob_clien "created_at", "updated_at", "users", - "has_new_messages", "new_messages_count", } @@ -42,6 +41,5 @@ async def test_get_user_chats_succeeds_given_user_has_multiple_chats( "created_at", "updated_at", "users", - "has_new_messages", "new_messages_count", } diff --git a/tests/conftest.py b/tests/conftest.py index 926bc58..383e43c 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -22,7 +22,9 @@ f"{settings.DB_USER}:{settings.DB_PASSWORD}@{settings.DB_HOST}:{settings.DB_PORT}/{settings.DB_NAME}" ) engine_test = create_async_engine(DATABASE_URL_TEST, connect_args={"server_settings": {"jit": "off"}}) -async_session_maker = sessionmaker(engine_test, class_=AsyncSession, expire_on_commit=False) +autocommit_engine = engine_test.execution_options(isolation_level="AUTOCOMMIT") + +async_session_maker = sessionmaker(autocommit_engine, class_=AsyncSession, expire_on_commit=False) metadata.bind = engine_test @@ -36,14 +38,14 @@ async def override_get_async_session() -> AsyncGenerator[AsyncSession, None]: @pytest.fixture(scope="session") async def db_session(): - async with engine_test.begin() as conn: + async with autocommit_engine.begin() as conn: await conn.execute(text(f"CREATE SCHEMA IF NOT EXISTS {settings.DB_SCHEMA}")) await conn.run_sync(metadata.create_all) async with async_session_maker() as session: yield session await session.flush() await session.rollback() - async with engine_test.begin() as conn: + async with autocommit_engine.begin() as conn: await conn.execute(text(f"DROP SCHEMA {settings.DB_SCHEMA} CASCADE"))