зеркало из https://github.com/mozilla/airmozilla.git
fixes bug 1132723 - Drop test-utils
This commit is contained in:
Родитель
2e27e98cb9
Коммит
aaaf897b7a
17
README.md
17
README.md
|
@ -538,10 +538,21 @@ Another common mistake is to *not* have `SESSION_COOKIE_SECURE = False` in your
|
|||
`airmozilla/settings/local.py` but using `http://localhost:8000` to reach
|
||||
the site.
|
||||
|
||||
### Tests are not working
|
||||
### Tests are slow
|
||||
|
||||
By default when you run `./manage.py test ...` it will re-create the
|
||||
database for every run. This takes 5-10 seconds extra time every time.
|
||||
If you know that the testing process doesn't involve any complexities
|
||||
in terms of migrations, you can speed up the tests a lot by setting
|
||||
the environment variable `REUSE_DB=1`. For example like this:
|
||||
|
||||
REUSE_DB=1 ./manage.py test
|
||||
|
||||
Or to make it stick, use:
|
||||
|
||||
export REUSE_DB=1
|
||||
./manage.py test
|
||||
|
||||
If tests don't work around code you didn't touch, it might be that your test
|
||||
database is out-of-sync so then next time simply run: `FORCE_DB=1 ./manage.py test`.
|
||||
|
||||
Migrations
|
||||
----------
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
from .base import *
|
||||
import sys
|
||||
import os
|
||||
|
||||
from .base import * # NOQA
|
||||
try:
|
||||
from .local import *
|
||||
from .local import * # NOQA
|
||||
except ImportError, exc: # pragma: no cover
|
||||
exc.args = tuple([
|
||||
'%s (did you rename airmozilla/settings/local.py-dist?)' % (
|
||||
|
@ -10,7 +13,8 @@ except ImportError, exc: # pragma: no cover
|
|||
raise exc
|
||||
|
||||
|
||||
# This takes care of removing
|
||||
# This takes care of removing that pesky warning, about raven not
|
||||
# being configured in local development, that looks like an error.
|
||||
try:
|
||||
assert RAVEN_CONFIG['dsn']
|
||||
except (NameError, KeyError, AssertionError): # pragma: no cover
|
||||
|
@ -18,3 +22,14 @@ except (NameError, KeyError, AssertionError): # pragma: no cover
|
|||
INSTALLED_APPS = list(INSTALLED_APPS)
|
||||
INSTALLED_APPS.remove('raven.contrib.django.raven_compat')
|
||||
INSTALLED_APPS = tuple(INSTALLED_APPS)
|
||||
|
||||
|
||||
if sys.argv[1] == 'test':
|
||||
from .test import * # NOQA
|
||||
|
||||
# Are you getting full benefit from django-nose?
|
||||
if not os.getenv('REUSE_DB', 'false').lower() in ('true', '1', ''):
|
||||
print (
|
||||
"Note!\n\tIf you want much faster tests in local development "
|
||||
"consider setting the REUSE_DB=1 environment variable.\n"
|
||||
)
|
||||
|
|
|
@ -55,6 +55,8 @@ INSTALLED_APPS = (
|
|||
'django_nose', # deliberately making this the last one
|
||||
)
|
||||
|
||||
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'
|
||||
|
||||
# Necessary so that test-utils doesn't try to execute some deprecated
|
||||
# functionality on the database connection.
|
||||
SQL_RESET_SEQUENCES = False
|
||||
|
@ -292,7 +294,7 @@ try:
|
|||
# ujson is a much faster json serializer
|
||||
# We tell the django-jsonview decorator to use it only if the ujson
|
||||
# package is installed and can be imported
|
||||
import ujson
|
||||
import ujson # NOQA
|
||||
JSON_MODULE = 'ujson'
|
||||
JSON_USE_DJANGO_SERIALIZER = False
|
||||
except ImportError:
|
||||
|
|
|
@ -1,4 +1,8 @@
|
|||
# These settings will always be overriding for all test runs
|
||||
"""
|
||||
These settings will always be overriding for all test runs.
|
||||
"""
|
||||
|
||||
import tempfile
|
||||
|
||||
EMAIL_FROM_ADDRESS = 'doesnt@matter.com'
|
||||
|
||||
|
@ -13,12 +17,12 @@ MOZILLIANS_API_KEY = 'supersecret'
|
|||
VIDLY_API_URL = 'http://vid.ly.shouldneveractuallybeused.com/api/'
|
||||
|
||||
# So that we never accidentally send tweets during tests
|
||||
TWITTER_CONSUMER_KEY = \
|
||||
TWITTER_CONSUMER_SECRET = \
|
||||
TWITTER_ACCESS_TOKEN = \
|
||||
TWITTER_ACCESS_TOKEN_SECRET = "test"
|
||||
TWEETER_BACKEND = None
|
||||
TWITTER_CONSUMER_KEY = TWITTER_ACCESS_TOKEN_SECRET
|
||||
TWITTER_CONSUMER_SECRET = TWITTER_CONSUMER_KEY
|
||||
TWITTER_ACCESS_TOKEN = TWITTER_CONSUMER_KEY
|
||||
|
||||
TWEETER_BACKEND = None
|
||||
|
||||
URL_TRANSFORM_PASSWORDS = {
|
||||
'bla': 'bla',
|
||||
|
@ -34,7 +38,6 @@ SENTRY_DSN = None
|
|||
SITE_URL = 'http://localhost:8000'
|
||||
|
||||
AWS_ACCESS_KEY_ID = AWS_SECRET_ACCESS_KEY = 'something'
|
||||
#S3_UPLOAD_BUCKET = 'air-mozilla-uploads'
|
||||
|
||||
EDGECAST_SECURE_KEY = 'soemthing'
|
||||
|
||||
|
@ -42,7 +45,6 @@ AKAMAI_SECURE_KEY = 'something'
|
|||
|
||||
BROWSERID_AUDIENCES = ['http://testserver']
|
||||
|
||||
import tempfile
|
||||
MEDIA_ROOT = tempfile.mkdtemp(prefix='testmedia')
|
||||
|
||||
SCRAPE_CREDENTIALS = {}
|
||||
|
@ -78,7 +80,7 @@ BROWSERID_DISABLED = False
|
|||
# Don't actually use celery in tests
|
||||
CELERY_ALWAYS_EAGER = True
|
||||
|
||||
SCREENCAPTURES_NO_PICTURES = 5 # faster
|
||||
SCREENCAPTURES_NO_PICTURES = 5 # faster
|
||||
|
||||
# Deliberately disabled since reducing the size of PNGs
|
||||
# slows down the tests significantly and we have deliberate
|
|
@ -10,8 +10,6 @@ web:
|
|||
- "8000:8000"
|
||||
environment:
|
||||
- DISPLAY=:99.0
|
||||
# If you want to reset your test db uncomment this
|
||||
# - FORCE_DB=1
|
||||
links:
|
||||
- db
|
||||
- memcached
|
||||
|
|
|
@ -96,13 +96,11 @@ bleach==1.4.1
|
|||
jingo==0.7.1
|
||||
# sha256: BrZLrybHpDbLuBRk56UAR66jDbEFnb5uCdxEPvojuiA
|
||||
django-appconf==0.6
|
||||
# sha256: Ik3Rv9j8259nJWxUMBR7TAEF1y9qyM47ymtIZEnsYGI
|
||||
# sha256: 6gWLBd1MYed3X8xk-j2j7kMPcT3gMsO7WvOpC_UbLro
|
||||
django-nose==1.4.1
|
||||
# sha256: c2rlPj7EfbuzBJmZwYzlRYWvKZ74gXLZony1_aKdqgA
|
||||
# sha256: gPnTaQ4NuDDDdq6XFygUjXYN1k1ETRwJJ0fWY6DXL3M
|
||||
django-nose==1.4.2
|
||||
# sha256: RORjnsBXprap3duGnU46SBj8knjsSQzOOa7whEBZKpM
|
||||
django-session-csrf==0.5
|
||||
# sha256: ih29HHrehSBq53DJzl9DCBoJjJX5lK8RP2Q06QBVmmc
|
||||
https://github.com/jbalogh/test-utils/archive/e42e031.zip#egg=test-utils
|
||||
# sha256: sGqGRRqZ1sJr-mUIKZnb9ljgh-WW6SkszmiLU-q6qto
|
||||
django-sha2==0.4
|
||||
# sha256: TEiNy4TP_Yi80rFlGWK3Z_m7JFIGQHyOpngEPNOdPKg
|
||||
|
|
Загрузка…
Ссылка в новой задаче