Skip to content

Commit 24fa76e

Browse files
authored
tests(fix): stop updating sqlite db during tests (#648)
* fix: stop sqlite db from being updated while running tests * refactor: small refactor in db checking code
1 parent 9e0c4f3 commit 24fa76e

File tree

1 file changed

+7
-3
lines changed
  • tagstudio/src/core/library/alchemy

1 file changed

+7
-3
lines changed

tagstudio/src/core/library/alchemy/db.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,14 @@ def make_tables(engine: Engine) -> None:
3737
# tag IDs < 1000 are reserved
3838
# create tag and delete it to bump the autoincrement sequence
3939
# TODO - find a better way
40+
# is this the better way?
4041
with engine.connect() as conn:
41-
conn.execute(text("INSERT INTO tags (id, name, color) VALUES (999, 'temp', 1)"))
42-
conn.execute(text("DELETE FROM tags WHERE id = 999"))
43-
conn.commit()
42+
result = conn.execute(text("SELECT SEQ FROM sqlite_sequence WHERE name='tags'"))
43+
autoincrement_val = result.scalar()
44+
if not autoincrement_val or autoincrement_val < 1000:
45+
conn.execute(text("INSERT INTO tags (id, name, color) VALUES (999, 'temp', 1)"))
46+
conn.execute(text("DELETE FROM tags WHERE id = 999"))
47+
conn.commit()
4448

4549

4650
def drop_tables(engine: Engine) -> None:

0 commit comments

Comments
 (0)