Initial commit
This commit is contained in:
272
env/lib/python3.10/site-packages/wagtail/test/settings.py
vendored
Normal file
272
env/lib/python3.10/site-packages/wagtail/test/settings.py
vendored
Normal file
@@ -0,0 +1,272 @@
|
||||
import os
|
||||
|
||||
from django.contrib.messages import constants as message_constants
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
DEBUG = os.environ.get("DJANGO_DEBUG", "false").lower() == "true"
|
||||
WAGTAIL_ROOT = os.path.dirname(os.path.dirname(__file__))
|
||||
WAGTAILADMIN_BASE_URL = "http://testserver"
|
||||
STATIC_ROOT = os.path.join(WAGTAIL_ROOT, "tests", "test-static")
|
||||
MEDIA_ROOT = os.path.join(WAGTAIL_ROOT, "tests", "test-media")
|
||||
MEDIA_URL = "/media/"
|
||||
|
||||
TIME_ZONE = "Asia/Tokyo"
|
||||
|
||||
DATABASES = {
|
||||
"default": {
|
||||
"ENGINE": os.environ.get("DATABASE_ENGINE", "django.db.backends.sqlite3"),
|
||||
"NAME": os.environ.get("DATABASE_NAME", ":memory:"),
|
||||
"USER": os.environ.get("DATABASE_USER", ""),
|
||||
"PASSWORD": os.environ.get("DATABASE_PASSWORD", ""),
|
||||
"HOST": os.environ.get("DATABASE_HOST", ""),
|
||||
"PORT": os.environ.get("DATABASE_PORT", ""),
|
||||
"TEST": {"NAME": os.environ.get("DATABASE_NAME", "")},
|
||||
}
|
||||
}
|
||||
|
||||
# Set regular database name when a non-SQLite db is used
|
||||
if DATABASES["default"]["ENGINE"] != "django.db.backends.sqlite3":
|
||||
DATABASES["default"]["NAME"] = os.environ.get("DATABASE_NAME", "wagtail")
|
||||
|
||||
# Add extra options when mssql is used (on for example appveyor)
|
||||
if DATABASES["default"]["ENGINE"] == "sql_server.pyodbc":
|
||||
DATABASES["default"]["OPTIONS"] = {
|
||||
"driver": os.environ.get("DATABASE_DRIVER", "SQL Server Native Client 11.0"),
|
||||
"MARS_Connection": "True",
|
||||
"host_is_server": True, # Applies to FreeTDS driver only
|
||||
}
|
||||
|
||||
|
||||
# explicitly set charset / collation to utf8 on mysql
|
||||
if DATABASES["default"]["ENGINE"] == "django.db.backends.mysql":
|
||||
DATABASES["default"]["TEST"]["CHARSET"] = "utf8"
|
||||
DATABASES["default"]["TEST"]["COLLATION"] = "utf8_general_ci"
|
||||
|
||||
|
||||
SECRET_KEY = "not needed"
|
||||
|
||||
ROOT_URLCONF = "wagtail.test.urls"
|
||||
|
||||
STATIC_URL = "/static/"
|
||||
|
||||
STATICFILES_FINDERS = (
|
||||
"django.contrib.staticfiles.finders.FileSystemFinder",
|
||||
"django.contrib.staticfiles.finders.AppDirectoriesFinder",
|
||||
)
|
||||
|
||||
# Default storage settings
|
||||
# https://docs.djangoproject.com/en/stable/ref/settings/#std-setting-STORAGES
|
||||
STORAGES = {
|
||||
"default": {
|
||||
"BACKEND": "django.core.files.storage.FileSystemStorage",
|
||||
},
|
||||
"staticfiles": {
|
||||
"BACKEND": "django.contrib.staticfiles.storage.StaticFilesStorage",
|
||||
},
|
||||
}
|
||||
|
||||
if os.environ.get("STATICFILES_STORAGE", "") == "manifest":
|
||||
STORAGES["staticfiles"][
|
||||
"BACKEND"
|
||||
] = "django.contrib.staticfiles.storage.ManifestStaticFilesStorage"
|
||||
|
||||
|
||||
USE_TZ = not os.environ.get("DISABLE_TIMEZONE")
|
||||
if not USE_TZ:
|
||||
print("Timezone support disabled") # noqa: T201
|
||||
|
||||
LANGUAGE_CODE = "en"
|
||||
|
||||
TEMPLATES = [
|
||||
{
|
||||
"BACKEND": "django.template.backends.django.DjangoTemplates",
|
||||
"DIRS": [],
|
||||
"APP_DIRS": True,
|
||||
"OPTIONS": {
|
||||
"context_processors": [
|
||||
"django.template.context_processors.debug",
|
||||
"django.template.context_processors.request",
|
||||
"django.contrib.auth.context_processors.auth",
|
||||
"django.contrib.messages.context_processors.messages",
|
||||
"django.template.context_processors.request",
|
||||
"wagtail.test.context_processors.do_not_use_static_url",
|
||||
"wagtail.contrib.settings.context_processors.settings",
|
||||
],
|
||||
"debug": True, # required in order to catch template errors
|
||||
},
|
||||
},
|
||||
{
|
||||
"BACKEND": "django.template.backends.jinja2.Jinja2",
|
||||
"APP_DIRS": False,
|
||||
"DIRS": [
|
||||
os.path.join(WAGTAIL_ROOT, "test", "testapp", "jinja2_templates"),
|
||||
],
|
||||
"OPTIONS": {
|
||||
"extensions": [
|
||||
"wagtail.jinja2tags.core",
|
||||
"wagtail.admin.jinja2tags.userbar",
|
||||
"wagtail.images.jinja2tags.images",
|
||||
"wagtail.contrib.settings.jinja2tags.settings",
|
||||
],
|
||||
},
|
||||
},
|
||||
]
|
||||
|
||||
MIDDLEWARE = (
|
||||
"django.middleware.common.CommonMiddleware",
|
||||
"django.contrib.sessions.middleware.SessionMiddleware",
|
||||
"django.middleware.csrf.CsrfViewMiddleware",
|
||||
"django.middleware.locale.LocaleMiddleware",
|
||||
"django.contrib.auth.middleware.AuthenticationMiddleware",
|
||||
"django.contrib.messages.middleware.MessageMiddleware",
|
||||
"django.middleware.clickjacking.XFrameOptionsMiddleware",
|
||||
"wagtail.test.middleware.BlockDodgyUserAgentMiddleware",
|
||||
"wagtail.contrib.redirects.middleware.RedirectMiddleware",
|
||||
)
|
||||
|
||||
INSTALLED_APPS = [
|
||||
# Install wagtailredirects with its appconfig
|
||||
# There's nothing special about wagtailredirects, we just need to have one
|
||||
# app which uses AppConfigs to test that hooks load properly
|
||||
"wagtail.contrib.redirects.apps.WagtailRedirectsAppConfig",
|
||||
"wagtail.test.testapp",
|
||||
"wagtail.test.demosite",
|
||||
"wagtail.test.snippets",
|
||||
"wagtail.test.routablepage",
|
||||
"wagtail.test.search",
|
||||
"wagtail.test.i18n",
|
||||
"wagtail.test.streamfield_migrations",
|
||||
"wagtail.contrib.simple_translation",
|
||||
"wagtail.contrib.styleguide",
|
||||
"wagtail.contrib.routable_page",
|
||||
"wagtail.contrib.frontend_cache",
|
||||
"wagtail.contrib.search_promotions",
|
||||
"wagtail.contrib.settings",
|
||||
"wagtail.contrib.table_block",
|
||||
"wagtail.contrib.forms",
|
||||
"wagtail.contrib.typed_table_block",
|
||||
"wagtail.search",
|
||||
"wagtail.embeds",
|
||||
"wagtail.images",
|
||||
"wagtail.sites",
|
||||
"wagtail.locales",
|
||||
"wagtail.users",
|
||||
"wagtail.snippets",
|
||||
"wagtail.documents",
|
||||
"wagtail.admin",
|
||||
"wagtail.api.v2",
|
||||
"wagtail",
|
||||
"taggit",
|
||||
"rest_framework",
|
||||
"django.contrib.admin",
|
||||
"django.contrib.auth",
|
||||
"django.contrib.contenttypes",
|
||||
"django.contrib.sessions",
|
||||
"django.contrib.messages",
|
||||
"django.contrib.sitemaps",
|
||||
"django.contrib.staticfiles",
|
||||
]
|
||||
|
||||
|
||||
# Using DatabaseCache to make sure that the cache is cleared between tests.
|
||||
# This prevents false-positives in some wagtail core tests where we are
|
||||
# changing the 'wagtail_root_paths' key which may cause future tests to fail.
|
||||
CACHES = {
|
||||
"default": {
|
||||
"BACKEND": "django.core.cache.backends.db.DatabaseCache",
|
||||
"LOCATION": "cache",
|
||||
}
|
||||
}
|
||||
|
||||
PASSWORD_HASHERS = (
|
||||
"django.contrib.auth.hashers.MD5PasswordHasher", # don't use the intentionally slow default password hasher
|
||||
)
|
||||
|
||||
ALLOWED_HOSTS = [
|
||||
"localhost",
|
||||
"testserver",
|
||||
"other.example.com",
|
||||
"127.0.0.1",
|
||||
"0.0.0.0",
|
||||
]
|
||||
|
||||
WAGTAILSEARCH_BACKENDS = {
|
||||
"default": {
|
||||
"BACKEND": "wagtail.search.backends.database.fallback",
|
||||
}
|
||||
}
|
||||
|
||||
EMAIL_BACKEND = "django.core.mail.backends.console.EmailBackend"
|
||||
|
||||
if os.environ.get("USE_EMAIL_USER_MODEL"):
|
||||
INSTALLED_APPS.append("wagtail.test.emailuser")
|
||||
AUTH_USER_MODEL = "emailuser.EmailUser"
|
||||
print("EmailUser (no username) user model active") # noqa: T201
|
||||
else:
|
||||
INSTALLED_APPS.append("wagtail.test.customuser")
|
||||
AUTH_USER_MODEL = "customuser.CustomUser"
|
||||
# Extra user field for custom user edit and create form tests. This setting
|
||||
# needs to here because it is used at the module level of wagtailusers.forms
|
||||
# when the module gets loaded. The decorator 'override_settings' does not work
|
||||
# in this scenario.
|
||||
WAGTAIL_USER_CUSTOM_FIELDS = ["country", "attachment"]
|
||||
|
||||
if os.environ.get("DATABASE_ENGINE") == "django.db.backends.postgresql":
|
||||
WAGTAILSEARCH_BACKENDS["postgresql"] = {
|
||||
"BACKEND": "wagtail.search.backends.database",
|
||||
"AUTO_UPDATE": False,
|
||||
"SEARCH_CONFIG": "english",
|
||||
}
|
||||
|
||||
if "ELASTICSEARCH_URL" in os.environ:
|
||||
if os.environ.get("ELASTICSEARCH_VERSION") == "8":
|
||||
backend = "wagtail.search.backends.elasticsearch8"
|
||||
elif os.environ.get("ELASTICSEARCH_VERSION") == "7":
|
||||
backend = "wagtail.search.backends.elasticsearch7"
|
||||
|
||||
WAGTAILSEARCH_BACKENDS["elasticsearch"] = {
|
||||
"BACKEND": backend,
|
||||
"URLS": [os.environ["ELASTICSEARCH_URL"]],
|
||||
"TIMEOUT": 10,
|
||||
"max_retries": 1,
|
||||
"AUTO_UPDATE": False,
|
||||
"INDEX_SETTINGS": {"settings": {"index": {"number_of_shards": 1}}},
|
||||
}
|
||||
|
||||
|
||||
WAGTAIL_SITE_NAME = "Test Site"
|
||||
|
||||
WAGTAILADMIN_RICH_TEXT_EDITORS = {
|
||||
"default": {"WIDGET": "wagtail.admin.rich_text.DraftailRichTextArea"},
|
||||
"custom": {"WIDGET": "wagtail.test.testapp.rich_text.CustomRichTextArea"},
|
||||
}
|
||||
|
||||
WAGTAIL_CONTENT_LANGUAGES = [
|
||||
("en", _("English")),
|
||||
("fr", _("French")),
|
||||
]
|
||||
|
||||
|
||||
# Set a non-standard DEFAULT_AUTHENTICATION_CLASSES value, to verify that the
|
||||
# admin API still works with session-based auth regardless of this setting
|
||||
# (see https://github.com/wagtail/wagtail/issues/5585)
|
||||
REST_FRAMEWORK = {
|
||||
"DEFAULT_AUTHENTICATION_CLASSES": [
|
||||
"rest_framework.authentication.BasicAuthentication",
|
||||
]
|
||||
}
|
||||
|
||||
# Disable redirect autocreation for the majority of tests (to improve efficiency)
|
||||
WAGTAILREDIRECTS_AUTO_CREATE = False
|
||||
|
||||
|
||||
# https://github.com/wagtail/wagtail/issues/2551 - projects should be able to set
|
||||
# MESSAGE_TAGS for their own purposes without them leaking into Wagtail admin styles.
|
||||
|
||||
MESSAGE_TAGS = {
|
||||
message_constants.DEBUG: "my-custom-tag",
|
||||
message_constants.INFO: "my-custom-tag",
|
||||
message_constants.SUCCESS: "my-custom-tag",
|
||||
message_constants.WARNING: "my-custom-tag",
|
||||
message_constants.ERROR: "my-custom-tag",
|
||||
}
|
||||
Reference in New Issue
Block a user