Files
Maison/samba-api/tests/conftest.py
2026-02-10 12:12:11 +01:00

51 lines
1.3 KiB
Python

import pytest
import asyncio
from httpx import AsyncClient
from fastapi.testclient import TestClient
from src.main import app
@pytest.fixture
def client():
"""Test client fixture"""
return TestClient(app)
@pytest.fixture
async def async_client():
"""Async test client fixture"""
async with AsyncClient(app=app, base_url="http://test") as ac:
yield ac
@pytest.fixture
def event_loop():
"""Event loop fixture for async tests"""
loop = asyncio.new_event_loop()
yield loop
loop.close()
@pytest.fixture
def mock_user_data():
"""Mock user data for testing"""
return {
"username": "testuser",
"password": "TestPassword123!",
"first_name": "Test",
"last_name": "User",
"email": "testuser@example.com",
"description": "Test user account"
}
@pytest.fixture
def mock_group_data():
"""Mock group data for testing"""
return {
"name": "testgroup",
"description": "Test group",
"group_type": "security",
"scope": "global"
}
@pytest.fixture
def mock_jwt_token():
"""Mock JWT token for authentication tests"""
return "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ0ZXN0dXNlciIsImV4cCI6MTcwMDAwMDAwMCwic2NvcGVzIjpbInJlYWQiLCJ3cml0ZSJdfQ.test_token"