"""Pytest configuration for Ross1000 tests.

Ensures Django settings are configured before any test runs.
"""

import django
from django.conf import settings


def pytest_configure(config):
    if not settings.configured:
        settings.configure(
            DATABASES={
                "default": {
                    "ENGINE": "django.db.backends.sqlite3",
                    "NAME": ":memory:",
                }
            },
            INSTALLED_APPS=[
                "django.contrib.contenttypes",
                "django.contrib.auth",
                "django.contrib.sessions",
                "django.contrib.messages",
                "rest_framework",
                "rest_framework.authtoken",
                "structures",
                "properties",
                "bookings",
                "guests",
                "istat",
                "services",
                "rates",
                "availability",
                "checkin",
                "invoicing",
                "users",
                "integrations",
                "dashboard",
            ],
            DEFAULT_AUTO_FIELD="django.db.models.BigAutoField",
            USE_TZ=True,
            SECRET_KEY="test-secret-key-for-ross1000-tests",
            ISTAT_CREDENTIAL_ENCRYPTION_KEY=None,
        )
