Loading docs/internals/contributing/writing-code/unit-tests.txt +4 −19 Original line number Diff line number Diff line Loading @@ -5,11 +5,6 @@ Unit tests Django comes with a test suite of its own, in the ``tests`` directory of the code base. It's our policy to make sure all tests pass at all times. The tests cover: * Models, the database API and everything else in core Django core (``tests/``), * :ref:`contrib-apps` (``django/contrib/<app>/tests`` or ``tests/<app>_...``). We appreciate any and all contributions to the test suite! The Django tests all use the testing infrastructure that ships with Django for Loading Loading @@ -108,8 +103,7 @@ internationalization, type: $ ./runtests.py --settings=path.to.settings generic_relations i18n How do you find out the names of individual tests? Look in ``tests/`` — each directory name there is the name of a test. Contrib app names are also valid test names. directory name there is the name of a test. If you just want to run a particular class of tests, you can specify a list of paths to individual test classes. For example, to run the ``TranslationTests`` Loading Loading @@ -221,18 +215,9 @@ and also excludes several directories not relevant to the results Contrib apps ------------ Tests for contrib apps go in their respective directories under ``django/contrib``, in a ``tests.py`` file. You can split the tests over multiple modules by using a ``tests`` directory in the normal Python way. If you have URLs that need to be mapped, put them in ``tests/urls.py``. To run tests for just one contrib app (e.g. ``auth``), use the same method as above: .. code-block:: bash $ ./runtests.py --settings=settings django.contrib.auth Tests for contrib apps can be found in the ``tests/`` directory, typically under ``<app_name>_tests``. For example, tests for ``contrib.auth`` are located in ``tests/auth_tests``. .. _troubleshooting-unit-tests: Loading tests/runtests.py +1 −10 Original line number Diff line number Diff line Loading @@ -9,7 +9,6 @@ import warnings from argparse import ArgumentParser import django from django import contrib from django.apps import apps from django.conf import settings from django.db import connection Loading @@ -24,9 +23,6 @@ from django.utils.deprecation import ( warnings.simplefilter("error", RemovedInDjango20Warning) warnings.simplefilter("error", RemovedInDjango21Warning) CONTRIB_MODULE_PATH = 'django.contrib' CONTRIB_DIR = os.path.dirname(upath(contrib.__file__)) RUNTESTS_DIR = os.path.abspath(os.path.dirname(upath(__file__))) TEMPLATE_DIR = os.path.join(RUNTESTS_DIR, 'templates') Loading Loading @@ -74,7 +70,6 @@ def get_test_modules(): modules = [] discovery_paths = [ (None, RUNTESTS_DIR), (CONTRIB_MODULE_PATH, CONTRIB_DIR) ] # GIS tests are in nested apps if connection.features.gis_enabled: Loading Loading @@ -177,11 +172,7 @@ def setup(verbosity, test_labels): # Reduce given test labels to just the app module path test_labels_set = set() for label in test_labels: bits = label.split('.') if bits[:2] == ['django', 'contrib']: bits = bits[:3] else: bits = bits[:1] bits = label.split('.')[:1] test_labels_set.add('.'.join(bits)) installed_app_names = set(get_installed()) Loading Loading
docs/internals/contributing/writing-code/unit-tests.txt +4 −19 Original line number Diff line number Diff line Loading @@ -5,11 +5,6 @@ Unit tests Django comes with a test suite of its own, in the ``tests`` directory of the code base. It's our policy to make sure all tests pass at all times. The tests cover: * Models, the database API and everything else in core Django core (``tests/``), * :ref:`contrib-apps` (``django/contrib/<app>/tests`` or ``tests/<app>_...``). We appreciate any and all contributions to the test suite! The Django tests all use the testing infrastructure that ships with Django for Loading Loading @@ -108,8 +103,7 @@ internationalization, type: $ ./runtests.py --settings=path.to.settings generic_relations i18n How do you find out the names of individual tests? Look in ``tests/`` — each directory name there is the name of a test. Contrib app names are also valid test names. directory name there is the name of a test. If you just want to run a particular class of tests, you can specify a list of paths to individual test classes. For example, to run the ``TranslationTests`` Loading Loading @@ -221,18 +215,9 @@ and also excludes several directories not relevant to the results Contrib apps ------------ Tests for contrib apps go in their respective directories under ``django/contrib``, in a ``tests.py`` file. You can split the tests over multiple modules by using a ``tests`` directory in the normal Python way. If you have URLs that need to be mapped, put them in ``tests/urls.py``. To run tests for just one contrib app (e.g. ``auth``), use the same method as above: .. code-block:: bash $ ./runtests.py --settings=settings django.contrib.auth Tests for contrib apps can be found in the ``tests/`` directory, typically under ``<app_name>_tests``. For example, tests for ``contrib.auth`` are located in ``tests/auth_tests``. .. _troubleshooting-unit-tests: Loading
tests/runtests.py +1 −10 Original line number Diff line number Diff line Loading @@ -9,7 +9,6 @@ import warnings from argparse import ArgumentParser import django from django import contrib from django.apps import apps from django.conf import settings from django.db import connection Loading @@ -24,9 +23,6 @@ from django.utils.deprecation import ( warnings.simplefilter("error", RemovedInDjango20Warning) warnings.simplefilter("error", RemovedInDjango21Warning) CONTRIB_MODULE_PATH = 'django.contrib' CONTRIB_DIR = os.path.dirname(upath(contrib.__file__)) RUNTESTS_DIR = os.path.abspath(os.path.dirname(upath(__file__))) TEMPLATE_DIR = os.path.join(RUNTESTS_DIR, 'templates') Loading Loading @@ -74,7 +70,6 @@ def get_test_modules(): modules = [] discovery_paths = [ (None, RUNTESTS_DIR), (CONTRIB_MODULE_PATH, CONTRIB_DIR) ] # GIS tests are in nested apps if connection.features.gis_enabled: Loading Loading @@ -177,11 +172,7 @@ def setup(verbosity, test_labels): # Reduce given test labels to just the app module path test_labels_set = set() for label in test_labels: bits = label.split('.') if bits[:2] == ['django', 'contrib']: bits = bits[:3] else: bits = bits[:1] bits = label.split('.')[:1] test_labels_set.add('.'.join(bits)) installed_app_names = set(get_installed()) Loading