46 lines
1.6 KiB
Python
46 lines
1.6 KiB
Python
import os
|
|
|
|
from .settings import *
|
|
|
|
|
|
# Test environment should be deterministic and isolated from remote services.
|
|
DEBUG = False
|
|
|
|
# Local Postgres defaults align with docker-compose.test.yml.
|
|
DATABASES["default"] = {
|
|
"ENGINE": os.environ.get("TEST_DB_ENGINE", "django.db.backends.postgresql"),
|
|
"NAME": os.environ.get("TEST_DB_NAME", os.environ.get("POSTGRES_DB", "rad")),
|
|
"USER": os.environ.get("TEST_DB_USER", os.environ.get("POSTGRES_USER", "django")),
|
|
"PASSWORD": os.environ.get("TEST_DB_PASSWORD", os.environ.get("POSTGRES_PASSWORD", "postgres")),
|
|
"HOST": os.environ.get("TEST_DB_HOST", "127.0.0.1"),
|
|
"PORT": os.environ.get("TEST_DB_PORT", "5432"),
|
|
"TEST": {
|
|
"NAME": os.environ.get("TEST_DB_TEST_NAME", "test_rad"),
|
|
},
|
|
}
|
|
|
|
# Keep tests fast and avoid external side effects.
|
|
EMAIL_BACKEND = "django.core.mail.backends.locmem.EmailBackend"
|
|
CACHES["default"] = {
|
|
"BACKEND": "django.core.cache.backends.locmem.LocMemCache",
|
|
}
|
|
|
|
TASKS = {
|
|
"default": {
|
|
"BACKEND": "django_tasks.backends.immediate.ImmediateBackend",
|
|
"QUEUES": ["default"],
|
|
}
|
|
}
|
|
|
|
# Local media root for tests to avoid container-only paths in settings_local
|
|
MEDIA_ROOT = os.path.join(BASE_DIR, "media_test") + "/"
|
|
os.makedirs(MEDIA_ROOT, exist_ok=True)
|
|
|
|
# Remove debug_toolbar from installed apps and middleware to avoid NoReverseMatch errors when settings.DEBUG is False
|
|
if "debug_toolbar" in INSTALLED_APPS:
|
|
INSTALLED_APPS.remove("debug_toolbar")
|
|
if "debug_toolbar.middleware.DebugToolbarMiddleware" in MIDDLEWARE:
|
|
MIDDLEWARE.remove("debug_toolbar.middleware.DebugToolbarMiddleware")
|
|
|
|
|