mirror of
https://github.com/zulip/zulip.git
synced 2025-11-11 01:16:19 +00:00
Apparently, something in Django 1.5's changes to their default logging setup resulted in the logger 500 errors (logged in django.core.handlers.base.handle_uncaught_exception) from reaching the root logger -- they stopped at propagating at the 'django' logger. We deal with this by making our logging system handle those events in the 'django' logger ourselves (and making the related changes needed to ensure that we still log to server.log and the console everything logged by our own humbug.requests logger and anything that falls through to the root logger). This requires updating the mechanism we use in test_settings.py to silence our request logging, since now the 'humbug.requests' logger is being re-initialized by the Django logging setup, which runs after test_settings.py. While we're at it, set propagate=False in the commented-out 'django.db' logging configuration (previously, queries would be logged twice). (imported from commit 32af29084e52be1ba6f92a7952c3a3946925b46b)
54 lines
1.5 KiB
Python
54 lines
1.5 KiB
Python
from settings import *
|
|
import os
|
|
import logging
|
|
|
|
DATABASES["default"] = {"NAME": "zephyr/tests/zephyrdb.test",
|
|
"ENGINE": "django.db.backends.sqlite3",
|
|
"OPTIONS": { "timeout": 20, },}
|
|
|
|
if "TORNADO_SERVER" in os.environ:
|
|
TORNADO_SERVER = os.environ["TORNADO_SERVER"]
|
|
else:
|
|
TORNADO_SERVER = None
|
|
|
|
# Decrease the get_updates timeout to 1 second.
|
|
# This allows CasperJS to proceed quickly to the next test step.
|
|
POLL_TIMEOUT = 1000
|
|
|
|
# Don't use the real message log for tests
|
|
EVENT_LOG_DIR = '/tmp/humbug-test-event-log'
|
|
|
|
# Print our emails rather than sending them
|
|
EMAIL_BACKEND = 'django.core.mail.backends.locmem.EmailBackend'
|
|
|
|
TEST_SUITE = True
|
|
|
|
# Don't use rabbitmq from the test suite -- the user_profile_ids for
|
|
# any generated queue elements won't match those being used by the
|
|
# real app.
|
|
USING_RABBITMQ = False
|
|
|
|
# Disable the tutorial because it confuses the client tests.
|
|
TUTORIAL_ENABLED = False
|
|
|
|
# Disable use of memcached for caching
|
|
CACHES = {
|
|
'default': {
|
|
'BACKEND': 'django.core.cache.backends.dummy.DummyCache',
|
|
'LOCATION': 'humbug-default-test-cache',
|
|
'TIMEOUT': 3600,
|
|
'OPTIONS': {
|
|
'MAX_ENTRIES': 100000
|
|
},
|
|
},
|
|
'database': {
|
|
'BACKEND': 'django.core.cache.backends.dummy.DummyCache',
|
|
'LOCATION': 'humbug-database-test-cache',
|
|
'TIMEOUT': 3600,
|
|
'OPTIONS': {
|
|
'MAX_ENTRIES': 100000
|
|
},
|
|
} }
|
|
|
|
LOGGING['loggers']['humbug.requests']['level'] = 'CRITICAL'
|