OpenTriage_AI / tests /conftest.py
KrishnaCosmic's picture
checking changes
5eebd59
"""
Configuration for pytest fixtures and shared test utilities.
"""
import pytest
import os
import sys
# Add the project root to the path
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
# Set test environment variables
os.environ['TESTING'] = 'true'
os.environ['JWT_SECRET'] = 'test-jwt-secret-for-testing'
os.environ['ENVIRONMENT'] = 'test'
@pytest.fixture
def mock_user():
"""Fixture providing a mock user object."""
return {
"id": "test-user-123",
"username": "testuser",
"role": "CONTRIBUTOR",
"avatarUrl": "https://github.com/test.png"
}
@pytest.fixture
def mock_maintainer():
"""Fixture providing a mock maintainer user."""
return {
"id": "maintainer-123",
"username": "maintainer",
"role": "MAINTAINER",
"avatarUrl": "https://github.com/maintainer.png"
}
@pytest.fixture
def auth_headers(mock_user):
"""Fixture providing authorization headers with a valid token."""
import jwt
import time
token = jwt.encode(
{
"user_id": mock_user["id"],
"role": mock_user["role"],
"exp": int(time.time()) + 3600
},
os.environ['JWT_SECRET'],
algorithm="HS256"
)
return {"Authorization": f"Bearer {token}"}
@pytest.fixture
def api_key_headers():
"""Fixture providing API key headers for service-to-service calls."""
return {"X-API-Key": os.environ.get("AI_ENGINE_API_KEY", "")}