INNER CODE UNIT · Python

patch_new_engine

dialoguemd/fastapi-sqla · fastapi_sqla/_pytest_plugin.py:112

def patch_new_engine(request: FixtureRequest, sqla_connection: Connection):
    """So that all DB operations are never written to db for real."""
    if "dont_patch_engines" in request.keywords:
        yield
    else:
        with sqla_connection.begin() as transaction:
            with patch("fastapi_sqla.sqla.new_engine", return_value=sqla_connection):
                yield

            transaction.rollback()


@fixture
def session_factory(
    sqla_connection: Connection, sqla_reflection, patch_new_engine
) -> sessionmaker:
    return sessionmaker(bind=sqla_connection)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…