diff options
Diffstat (limited to 'lib/sqlalchemy/testing/engines.py')
| -rw-r--r-- | lib/sqlalchemy/testing/engines.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/sqlalchemy/testing/engines.py b/lib/sqlalchemy/testing/engines.py index a313c298a..3faf96857 100644 --- a/lib/sqlalchemy/testing/engines.py +++ b/lib/sqlalchemy/testing/engines.py @@ -266,7 +266,13 @@ def reconnecting_engine(url=None, options=None): return engine -def testing_engine(url=None, options=None, future=None, asyncio=False): +def testing_engine( + url=None, + options=None, + future=None, + asyncio=False, + transfer_staticpool=False, +): """Produce an engine configured by --options with optional overrides.""" if asyncio: @@ -300,6 +306,12 @@ def testing_engine(url=None, options=None, future=None, asyncio=False): engine = create_engine(url, **options) + if transfer_staticpool: + from sqlalchemy.pool import StaticPool + + if config.db is not None and isinstance(config.db.pool, StaticPool): + engine.pool._transfer_from(config.db.pool) + if scope == "global": if asyncio: engine.sync_engine._has_events = True |
