🔧 fix(test_user.py): update imports to match changes in project structure

🔧 fix(test_user.py): update fixtures to use session_getter and get_db_manager functions for session management
✨ feat(test_user.py): add support for creating and managing database sessions using session_getter and get_db_manager functions
🔧 fix(test_user.py): update test_user_waiting_for_approval function to use session_getter and get_db_manager functions for session management
🔧 fix(test_user.py): update test_data_consistency_after_delete function to use session_getter and get_db_manager functions for session management
🔧 fix(test_user.py): update test_inactive_user function to use session_getter and get_db_manager functions for session management
This commit is contained in:
Gabriel Luiz Freitas Almeida 2023-09-20 18:35:38 -03:00
commit b4f48f1ad9

View file

@ -2,15 +2,17 @@ from datetime import datetime
from langflow.services.auth.utils import create_super_user, get_password_hash from langflow.services.auth.utils import create_super_user, get_password_hash
from langflow.services.database.models.user.user import User from langflow.services.database.models.user.user import User
from langflow.services.getters import get_settings_manager from langflow.services.database.utils import session_getter
from langflow.services.getters import get_db_manager, get_settings_manager
import pytest import pytest
from langflow.services.database.models.user import UserUpdate from langflow.services.database.models.user import UserUpdate
@pytest.fixture @pytest.fixture
def super_user(client, session): def super_user(client):
settings_manager = get_settings_manager() settings_manager = get_settings_manager()
auth_settings = settings_manager.auth_settings auth_settings = settings_manager.auth_settings
with session_getter(get_db_manager()) as session:
return create_super_user( return create_super_user(
db=session, db=session,
username=auth_settings.SUPERUSER, username=auth_settings.SUPERUSER,
@ -34,7 +36,8 @@ def super_user_headers(client, super_user):
@pytest.fixture @pytest.fixture
def deactivated_user(session): def deactivated_user():
with session_getter(get_db_manager()) as session:
user = User( user = User(
username="deactivateduser", username="deactivateduser",
password=get_password_hash("testpassword"), password=get_password_hash("testpassword"),
@ -44,11 +47,15 @@ def deactivated_user(session):
) )
session.add(user) session.add(user)
session.commit() session.commit()
session.refresh(user)
return user return user
def test_user_waiting_for_approval(client, session): def test_user_waiting_for_approval(
client,
):
# Create a user that is not active and has never logged in # Create a user that is not active and has never logged in
with session_getter(get_db_manager()) as session:
user = User( user = User(
username="waitingforapproval", username="waitingforapproval",
password=get_password_hash("testpassword"), password=get_password_hash("testpassword"),
@ -106,8 +113,9 @@ def test_data_consistency_after_delete(client, test_user, super_user_headers):
assert all(user["id"] != user_id for user in response.json()["users"]) assert all(user["id"] != user_id for user in response.json()["users"])
def test_inactive_user(client, session): def test_inactive_user(client):
# Create a user that is not active and has a last_login_at value # Create a user that is not active and has a last_login_at value
with session_getter(get_db_manager()) as session:
user = User( user = User(
username="inactiveuser", username="inactiveuser",
password=get_password_hash("testpassword"), password=get_password_hash("testpassword"),