test_settings.py 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import os
  2. from .settings import * # pylint: disable-all
  3. # Use test DB
  4. DATABASES = {
  5. "default": {
  6. "ENGINE": "django.db.backends.postgresql_psycopg2",
  7. "NAME": os.environ.get("POSTGRES_TEST_DB"),
  8. "USER": os.environ.get("POSTGRES_USER"),
  9. "PASSWORD": os.environ.get("POSTGRES_PASSWORD"),
  10. "HOST": os.environ.get("POSTGRES_HOST"),
  11. "PORT": 5432,
  12. }
  13. }
  14. # Use in-memory cache
  15. CACHES = {"default": {"BACKEND": "django.core.cache.backends.dummy.DummyCache"}}
  16. # Disable Debug Toolbar
  17. DEBUG_TOOLBAR_CONFIG = {}
  18. INTERNAL_IPS = []
  19. # Disable account validation via Stop Forum Spam
  20. MISAGO_NEW_REGISTRATIONS_VALIDATORS = ("misago.users.validators.validate_gmail_email",)
  21. # Store mails in memory
  22. EMAIL_BACKEND = "django.core.mail.backends.locmem.EmailBackend"
  23. # Use MD5 password hashing to speed up test suite
  24. PASSWORD_HASHERS = ("django.contrib.auth.hashers.MD5PasswordHasher",)
  25. # Simplify password validation to ease writing test assertions
  26. AUTH_PASSWORD_VALIDATORS = [
  27. {
  28. "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
  29. "OPTIONS": {"user_attributes": ["username", "email"]},
  30. },
  31. {
  32. "NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",
  33. "OPTIONS": {"min_length": 7},
  34. },
  35. {"NAME": "django.contrib.auth.password_validation.NumericPasswordValidator"},
  36. ]
  37. # Use english search config
  38. MISAGO_SEARCH_CONFIG = "english"
  39. # Register test post validator
  40. MISAGO_POST_VALIDATORS = ["misago.core.testproject.validators.test_post_validator"]
  41. # Register test post search filter
  42. MISAGO_POST_SEARCH_FILTERS = ["misago.core.testproject.searchfilters.test_filter"]
  43. # Additional overrides for Travis-CI
  44. if os.environ.get("TRAVIS"):
  45. DATABASES = {
  46. "default": {
  47. "ENGINE": "django.db.backends.postgresql_psycopg2",
  48. "NAME": "travis_ci_test",
  49. "USER": "postgres",
  50. "PASSWORD": "",
  51. "HOST": "127.0.0.1",
  52. "PORT": "",
  53. }
  54. }
  55. TEST_NAME = "travis_ci_test"