From 56c8d38cde2853fa96ad7020afefa2592ffe4cb7 Mon Sep 17 00:00:00 2001 From: ahtlon Date: Mon, 18 May 2026 21:03:47 +0200 Subject: [PATCH] almost all tests run now --- app/controllers/groupManager.py | 5 ++++- test/test_services/test_auth.py | 2 +- test/test_services/test_group_manager.py | 2 +- test/test_services/test_user_manager.py | 2 +- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/controllers/groupManager.py b/app/controllers/groupManager.py index f54e021..8cf4706 100644 --- a/app/controllers/groupManager.py +++ b/app/controllers/groupManager.py @@ -1,4 +1,4 @@ -from fastapi import APIRouter, HTTPException, Depends +from fastapi import APIRouter, HTTPException, Depends, status from sqlmodel import Session, select from typing import List @@ -16,6 +16,9 @@ def get_groups(*, db: Session = Depends(get_session), admin: bool = Depends(auth @group_router.post("/", response_model=GroupResponse) def create_group(*, db: Session = Depends(get_session), group: GroupCreate, admin: bool = Depends(auth_is_admin)): db_group = GroupDB.model_validate(group) + group = db.exec(select(GroupDB).where(GroupDB.name == db_group.name)).first() + if group is not None: + raise HTTPException(status_code=status.HTTP_409_CONFLICT, detail="Group already exists!") return add_and_refresh(db, db_group) @group_router.delete("/{group_id}") diff --git a/test/test_services/test_auth.py b/test/test_services/test_auth.py index 2990134..c2acfc8 100644 --- a/test/test_services/test_auth.py +++ b/test/test_services/test_auth.py @@ -90,7 +90,7 @@ def test_get_current_user(db_session, admin_user): token = create_access_token(data={"sub": admin_user.name}) # Get user from token - user = get_current_user(token=token) + user = get_current_user(token=token, db=db_session) assert user is not None assert user.name == admin_user.name assert user.id == admin_user.id diff --git a/test/test_services/test_group_manager.py b/test/test_services/test_group_manager.py index f4460b0..c40e2dd 100644 --- a/test/test_services/test_group_manager.py +++ b/test/test_services/test_group_manager.py @@ -20,7 +20,7 @@ def test_create_duplicate_group(client, auth_headers, test_group): response = client.post("/groups/", json=group_data, headers=auth_headers) # This should fail due to unique constraint - assert response.status_code == 422 # Validation error + assert response.status_code == 409 # Validation error def test_get_groups(client, auth_headers, test_group): diff --git a/test/test_services/test_user_manager.py b/test/test_services/test_user_manager.py index c62e366..e66e832 100644 --- a/test/test_services/test_user_manager.py +++ b/test/test_services/test_user_manager.py @@ -31,7 +31,7 @@ def test_create_user_unauthorized(client): } response = client.post("/users/", json=user_data) - assert response.status_code == 403 + assert response.status_code == 401 def test_get_users(client, auth_headers, admin_user, regular_user):