1from __future__ import annotations
2
3from plain.postgres.db import get_connection
4from plain.postgres.otel import suppress_db_tracing
5
6
7def setup_database(*, verbosity: int, prefix: str = "") -> str:
8 conn = get_connection()
9 old_name = conn.settings_dict["DATABASE"]
10 assert old_name is not None, "DATABASE setting must be set before creating test db"
11 with suppress_db_tracing():
12 conn.create_test_db(verbosity=verbosity, prefix=prefix)
13 return old_name
14
15
16def teardown_database(old_name: str, verbosity: int) -> None:
17 with suppress_db_tracing():
18 get_connection().destroy_test_db(old_name, verbosity)