Coverage for opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/invite_tokens.py: 86%

20 statements  

« prev     ^ index     » next       coverage.py v7.10.6, created at 2025-11-25 15:32 +0000

1from typing import TYPE_CHECKING, Optional 1a

2 

3from sqlalchemy import ForeignKey, Integer, String, orm 1a

4from sqlalchemy.orm import Mapped, mapped_column 1a

5 

6from .._model_base import BaseMixins, SqlAlchemyBase 1a

7from .._model_utils import guid 1a

8from .._model_utils.auto_init import auto_init 1a

9 

10if TYPE_CHECKING: 10 ↛ 11line 10 didn't jump to line 11 because the condition on line 10 was never true1a

11 from ..group import Group 

12 from .household import Household 

13 

14 

15class GroupInviteToken(SqlAlchemyBase, BaseMixins): 1a

16 __tablename__ = "invite_tokens" 1a

17 token: Mapped[str] = mapped_column(String, index=True, nullable=False, unique=True) 1a

18 uses_left: Mapped[int] = mapped_column(Integer, nullable=False, default=1) 1a

19 

20 group_id: Mapped[guid.GUID | None] = mapped_column(guid.GUID, ForeignKey("groups.id"), index=True) 1a

21 group: Mapped[Optional["Group"]] = orm.relationship("Group", back_populates="invite_tokens") 1a

22 household_id: Mapped[guid.GUID | None] = mapped_column(guid.GUID, ForeignKey("households.id"), index=True) 1a

23 household: Mapped[Optional["Household"]] = orm.relationship("Household", back_populates="invite_tokens") 1a

24 

25 @auto_init() 1a

26 def __init__(self, **_): 1a

27 pass