mirror of
https://gitlab.com/MoonTestUse1/AdministrationItDepartmens.git
synced 2025-08-14 00:25:46 +02:00
Тесты для бекенда
This commit is contained in:
31
backend/app/crud/tokens.py
Normal file
31
backend/app/crud/tokens.py
Normal file
@@ -0,0 +1,31 @@
|
||||
"""Token CRUD operations"""
|
||||
from sqlalchemy.orm import Session
|
||||
from typing import Optional
|
||||
from ..models.token import Token
|
||||
|
||||
def create_token(db: Session, token: str, user_id: int) -> Token:
|
||||
"""Create new token"""
|
||||
db_token = Token(token=token, user_id=user_id)
|
||||
db.add(db_token)
|
||||
db.commit()
|
||||
db.refresh(db_token)
|
||||
return db_token
|
||||
|
||||
def get_token(db: Session, token: str) -> Optional[Token]:
|
||||
"""Get token by value"""
|
||||
return db.query(Token).filter(Token.token == token).first()
|
||||
|
||||
def delete_token(db: Session, token: str) -> bool:
|
||||
"""Delete token"""
|
||||
db_token = get_token(db, token)
|
||||
if db_token:
|
||||
db.delete(db_token)
|
||||
db.commit()
|
||||
return True
|
||||
return False
|
||||
|
||||
def delete_user_tokens(db: Session, user_id: int) -> bool:
|
||||
"""Delete all tokens for a user"""
|
||||
db.query(Token).filter(Token.user_id == user_id).delete()
|
||||
db.commit()
|
||||
return True
|
||||
Reference in New Issue
Block a user