Coverage for src/flag_gems/utils/models/session.py: 67%
12 statements
« prev ^ index » next coverage.py v7.6.9, created at 2026-03-20 02:31 +0800
« prev ^ index » next coverage.py v7.6.9, created at 2026-03-20 02:31 +0800
1import sqlalchemy.exc
2import sqlalchemy.orm
3from typing_extensions import override
6class RollbackSession(sqlalchemy.orm.Session):
7 def __init__(self, *args, **kwargs) -> None:
8 super().__init__(*args, **kwargs)
10 @override
11 def commit(self) -> None:
12 try:
13 super().commit()
14 except sqlalchemy.exc.IntegrityError:
15 self.rollback()