[tool:pytest]
# Pytest configuration for client tests
testpaths = tests/client
python_files = test_*.py
python_classes = Test*
python_functions = test_*

# Asyncio configuration
asyncio_mode = auto
# Session-scoped fixtures need session-scoped event loop
asyncio_default_fixture_loop_scope = session

# Markers for test organization
markers =
    auth_required: Tests that require Google authentication
    service(name): Tests for specific Google services (gmail, drive, docs, etc.)
    integration: Integration tests requiring server connectivity
    slow: Slow-running tests
    unit: Fast unit tests
    smoke: Basic smoke tests for quick validation
    security: Security validation tests for access control

# Test output configuration
addopts = 
    -v
    --tb=short
    --strict-markers
    --disable-warnings
    --color=yes

# Test discovery patterns
collect_ignore = ["test_template.py"]

# Minimum Python version
minversion = 3.11

# Test timeout (in seconds)
timeout = 300

# Parallel execution (if pytest-xdist is installed)
# addopts = -n auto