conftest.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. from django.conf import settings
  2. import base64
  3. import os
  4. import os.path
  5. def pytest_configure(config):
  6. import warnings
  7. warnings.filterwarnings('error', '', Warning, r'(sentry|raven)')
  8. if not settings.configured:
  9. os.environ['DJANGO_SETTINGS_MODULE'] = 'sentry.conf.server'
  10. test_db = os.environ.get('DB', 'sqlite')
  11. if test_db == 'mysql':
  12. settings.DATABASES['default'].update({
  13. 'ENGINE': 'django.db.backends.mysql',
  14. 'NAME': 'sentry',
  15. 'USER': 'root',
  16. })
  17. elif test_db == 'postgres':
  18. settings.DATABASES['default'].update({
  19. 'ENGINE': 'django.db.backends.postgresql_psycopg2',
  20. 'USER': 'postgres',
  21. 'NAME': 'sentry',
  22. 'OPTIONS': {
  23. 'autocommit': True,
  24. }
  25. })
  26. elif test_db == 'sqlite':
  27. settings.DATABASES['default'].update({
  28. 'ENGINE': 'django.db.backends.sqlite3',
  29. 'NAME': ':memory:',
  30. })
  31. # Disable static compiling in tests
  32. settings.STATIC_BUNDLES = {}
  33. # override a few things with our test specifics
  34. settings.INSTALLED_APPS = tuple(settings.INSTALLED_APPS) + (
  35. 'tests',
  36. )
  37. settings.SENTRY_KEY = base64.b64encode(os.urandom(40))
  38. settings.SENTRY_PUBLIC = False
  39. # This speeds up the tests considerably, pbkdf2 is by design, slow.
  40. settings.PASSWORD_HASHERS = [
  41. 'django.contrib.auth.hashers.MD5PasswordHasher',
  42. ]