From 119a3edfca514e2e55bb989c61e1a2b9f1b484b2 Mon Sep 17 00:00:00 2001 From: Philipp Horstenkamp Date: Tue, 14 Nov 2023 17:44:24 +0100 Subject: [PATCH] Fixed sql alchemy reset order. (#383) There was a problem on the PG variant. The SQLite variant worked. Now resetting properly also on PG. --- .../utils/sql/reset_sql.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/aki_prj23_transparenzregister/utils/sql/reset_sql.py b/src/aki_prj23_transparenzregister/utils/sql/reset_sql.py index 878ec38..045a572 100644 --- a/src/aki_prj23_transparenzregister/utils/sql/reset_sql.py +++ b/src/aki_prj23_transparenzregister/utils/sql/reset_sql.py @@ -26,13 +26,16 @@ def reset_tables(db: Session, all_tables: bool = False) -> None: db.commit() else: logger.info(f"Resetting the main SQL tables in {db.bind}.") - for table in Base.metadata.sorted_tables: - if str(table) == entities.MissingCompany.__tablename__: - continue - logger.debug(f"Dropping {table}") - table.drop(db.bind) - db.commit() + tables = [ + table + for table in Base.metadata.sorted_tables + if str(table) != entities.MissingCompany.__tablename__ + ] + logger.debug(f"Dropping tables: {', '.join([str(_) for _ in tables])}") + Base.metadata.drop_all(db.bind, tables=tables) + db.commit() init_db(db) + db.commit() def cli() -> None: