From 971578ca345c3d3bae7fd93b87c41d43483b6f05 Mon Sep 17 00:00:00 2001 From: Andreas Pelme Date: Sun, 2 Mar 2014 12:40:30 +0100 Subject: Support for running the test suite with py.test * Get rid of runtests.py * Moved test code from rest_framework/tests and rest_framework/runtests to tests * Invoke py.test from setup.py * Invoke py.test from Travis * Invoke py.test from tox * Changed setUpClass to be just plain setUp in test_permissions.py * Updated contribution guideline to show how to invoke py.test --- conftest.py | 85 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 conftest.py (limited to 'conftest.py') diff --git a/conftest.py b/conftest.py new file mode 100644 index 00000000..7cfc77f2 --- /dev/null +++ b/conftest.py @@ -0,0 +1,85 @@ +def pytest_configure(): + from django.conf import settings + + settings.configure( + DEBUG_PROPAGATE_EXCEPTIONS=True, + DATABASES={'default': {'ENGINE': 'django.db.backends.sqlite3', + 'NAME': ':memory:'}}, + SECRET_KEY='not very secret in tests', + USE_I18N=True, + USE_L10N=True, + STATIC_URL='/static/', + ROOT_URLCONF='tests.urls', + TEMPLATE_LOADERS=( + 'django.template.loaders.filesystem.Loader', + 'django.template.loaders.app_directories.Loader', + ), + MIDDLEWARE_CLASSES=( + 'django.middleware.common.CommonMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + ), + INSTALLED_APPS=( + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.sites', + 'django.contrib.messages', + + 'rest_framework', + 'rest_framework.authtoken', + 'tests', + 'tests.accounts', + 'tests.records', + 'tests.users', + ), + PASSWORD_HASHERS=( + 'django.contrib.auth.hashers.SHA1PasswordHasher', + 'django.contrib.auth.hashers.PBKDF2PasswordHasher', + 'django.contrib.auth.hashers.PBKDF2SHA1PasswordHasher', + 'django.contrib.auth.hashers.BCryptPasswordHasher', + 'django.contrib.auth.hashers.MD5PasswordHasher', + 'django.contrib.auth.hashers.CryptPasswordHasher', + ), + ) + + try: + import oauth_provider + import oauth2 + except ImportError: + pass + else: + settings.INSTALLED_APPS += ( + 'oauth_provider', + ) + + try: + import provider + except ImportError: + pass + else: + settings.INSTALLED_APPS += ( + 'provider', + 'provider.oauth2', + ) + + # guardian is optional + try: + import guardian + except ImportError: + pass + else: + settings.ANONYMOUS_USER_ID = -1 + settings.AUTHENTICATION_BACKENDS = ( + 'django.contrib.auth.backends.ModelBackend', # default + 'guardian.backends.ObjectPermissionBackend', + ) + settings.INSTALLED_APPS += ( + 'guardian', + ) + + # Force Django to load all models + from django.db.models import get_models + get_models() -- cgit v1.2.3 From f22ed49c648c6dc3e2cd3c1dfbda77c010189e28 Mon Sep 17 00:00:00 2001 From: Xavier Ordoquy Date: Thu, 17 Apr 2014 11:09:02 +0200 Subject: Upgraded to pytest-django 2.6.1 --- conftest.py | 4 ---- 1 file changed, 4 deletions(-) (limited to 'conftest.py') diff --git a/conftest.py b/conftest.py index 7cfc77f2..b1691a88 100644 --- a/conftest.py +++ b/conftest.py @@ -79,7 +79,3 @@ def pytest_configure(): settings.INSTALLED_APPS += ( 'guardian', ) - - # Force Django to load all models - from django.db.models import get_models - get_models() -- cgit v1.2.3 From c5f68fba0638a15fa3c802f1bafc664e890611dc Mon Sep 17 00:00:00 2001 From: Xavier Ordoquy Date: Thu, 17 Apr 2014 14:30:33 +0200 Subject: Fixed the issue with django-filters / django 1.7 / pytest --- conftest.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'conftest.py') diff --git a/conftest.py b/conftest.py index b1691a88..7a49845f 100644 --- a/conftest.py +++ b/conftest.py @@ -79,3 +79,9 @@ def pytest_configure(): settings.INSTALLED_APPS += ( 'guardian', ) + + try: + import django + django.setup() + except AttributeError: + pass -- cgit v1.2.3 From eb89ed02f247d903db1cdd488d69b316323d9f60 Mon Sep 17 00:00:00 2001 From: Xavier Ordoquy Date: Thu, 1 May 2014 08:36:18 +0200 Subject: Added missing staticfiles app --- conftest.py | 1 + 1 file changed, 1 insertion(+) (limited to 'conftest.py') diff --git a/conftest.py b/conftest.py index 7a49845f..fa5184dd 100644 --- a/conftest.py +++ b/conftest.py @@ -27,6 +27,7 @@ def pytest_configure(): 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', + 'django.contrib.staticfiles', 'rest_framework', 'rest_framework.authtoken', -- cgit v1.2.3