django/tests
Daniel Wiesmann 0e7d59df3e Refs #25734 -- Relaxed GDALRaster statistics test to use assertAlmostEqual.
Some versions of GDAL give slightly different results.
2015-12-04 07:35:50 -05:00
..
absolute_url_overrides Refs #24652 -- Used SimpleTestCase where appropriate. 2015-05-20 13:46:13 -04:00
admin_autodiscover Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
admin_changelist Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
admin_checks Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
admin_custom_urls Fixed #25780 -- Removed redundant status code assertions from tests 2015-11-21 18:12:33 +01:00
admin_docs Fixed #25667 -- Fixed admindocs initial_header_level. 2015-12-02 17:56:38 -05:00
admin_filters Fixed #22810 -- Corrected admin changelist count for list filters that filter by default. 2015-11-18 19:54:27 -05:00
admin_inlines Fixed #25780 -- Removed redundant status code assertions from tests 2015-11-21 18:12:33 +01:00
admin_ordering Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
admin_registration Fixed #25688 -- Made admin.register() disallow an empty list of models. 2015-11-12 09:54:43 -05:00
admin_scripts Refs #25589 -- Fixed admin_scripts test failure on Windows. 2015-10-22 19:38:23 -04:00
admin_utils Fixed #25668 -- Misc spelling errors 2015-11-03 11:58:13 +02:00
admin_views Removed explicit User ids in tests. 2015-11-24 09:59:20 -05:00
admin_widgets Fixed #25820 -- Allowed whitespace in admin's calendar.js month/weekday names. 2015-12-03 19:44:15 -05:00
aggregation Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
aggregation_regress Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
annotations Fixed #24986 -- Added support for annotations in DISTINCT queries. 2015-08-15 08:23:32 -04:00
app_loading Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
apps Fixed #25745 -- Promoted RuntimeWarnings to errors in the test suite. 2015-11-14 11:33:28 -05:00
auth_tests Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
backends Fixed #25745 -- Promoted RuntimeWarnings to errors in the test suite. 2015-11-14 11:33:28 -05:00
base
bash_completion Removed support for syncing apps without migrations per deprecation timeline. 2015-01-18 15:58:06 -05:00
basic Fixed #25715 -- Fixed Model.refresh_from_db() with ForeignKey w/on_delete=SET_NULL. 2015-11-21 10:34:01 -05:00
builtin_server Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
bulk_create Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
cache Fixed #6727 -- Made patch_cache_control() patch an empty Cache-Control header. 2015-11-09 14:26:29 -05:00
check_framework Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
choices Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
conditional_processing Refs #24652 -- Used SimpleTestCase where appropriate. 2015-05-20 13:46:13 -04:00
contenttypes_tests Refs #24099 -- Removed compatibility shim for ContentType.name field. 2015-09-23 19:31:10 -04:00
context_processors Refs #24652 -- Used SimpleTestCase where appropriate. 2015-05-20 13:46:13 -04:00
createsuperuser Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
csrf_tests Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
custom_columns Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
custom_lookups Fixed #24629 -- Unified Transform and Expression APIs 2015-09-21 19:56:24 +10:00
custom_managers Refs #20625 -- Forwardported tests and release notes for queryset chaining fix. 2015-09-17 19:22:53 -04:00
custom_methods Tweak some examples. 2015-08-22 20:25:42 +02:00
custom_migration_operations Fixed #24093 -- Prevented MigrationWriter to write operation kwargs that are not explicitly deconstructed 2015-01-07 17:29:20 -07:00
custom_pk Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
datatypes Used assertIsInstance in tests. 2015-04-27 08:40:36 -04:00
dates Fixed #25470 -- Avoided unnecessary, expensive DATETIME typecast on MySQL. 2015-10-21 19:24:19 -04:00
datetimes Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
db_functions Fixed #25668 -- Misc spelling errors 2015-11-03 11:58:13 +02:00
db_typecasts Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
dbshell Fixed #25175 -- Renamed the postgresql_psycopg2 database backend to postgresql. 2015-08-07 09:33:17 -04:00
decorators Fixed #25611 -- Standardized descriptor signatures. 2015-10-26 11:31:16 -04:00
defer Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
defer_regress Fixed #25563 -- Cached deferred models in their proxied model's _meta.apps. 2015-10-19 20:11:32 -04:00
delete Fixed #25685 -- Fixed a duplicate query regression on deletion of proxied models. 2015-11-22 23:20:33 -05:00
delete_regress Changed database connection duplication technique. 2015-09-09 23:03:51 +02:00
deprecation Fixed #25466 -- Added backwards compatibility aliases for LoaderOrigin and StringOrigin. 2015-09-29 18:31:11 -04:00
dispatch Used assertIsInstance in tests. 2015-04-27 08:40:36 -04:00
distinct_on_fields Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
empty
expressions Fixed #25506 -- Allowed filtering over a RawSQL annotation. 2015-10-14 11:13:58 -07:00
expressions_case Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
extra_regress Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
field_deconstruction Refs #24590 -- Ensured isolation between autodetector tests 2015-08-28 10:17:34 +10:00
field_defaults
field_subclassing Removed SubfieldBase per deprecation timeline. 2015-09-23 19:31:09 -04:00
file_storage Fixed #21042 -- Allowed accessing FileDescriptor on the model class. 2015-10-01 15:19:39 -04:00
file_uploads Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
files Fixed #24963 -- Added File.seekable() on Python 3. 2015-06-12 10:17:21 -04:00
fixtures Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
fixtures_model_package Removed support for custom SQL per deprecation timeline. 2015-01-17 10:16:06 -05:00
fixtures_regress Fixed #25508 -- Modified QuerySet.__repr__() to disambiguate it from a list. 2015-10-06 12:38:34 -04:00
flatpages_tests Fixed #25780 -- Removed redundant status code assertions from tests 2015-11-21 18:12:33 +01:00
force_insert_update Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
foreign_object Refs #25745 -- Isolated a foreign_object test. 2015-11-14 11:33:28 -05:00
forms_tests Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
from_db_value Refs #9619 -- Fixed failing test case 2015-06-17 20:07:00 +02:00
generic_inline_admin Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
generic_relations Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
generic_relations_regress Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
generic_views Fixed #25780 -- Removed redundant status code assertions from tests 2015-11-21 18:12:33 +01:00
get_earliest_or_latest Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
get_object_or_404 Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
get_or_create Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
gis_tests Refs #25734 -- Relaxed GDALRaster statistics test to use assertAlmostEqual. 2015-12-04 07:35:50 -05:00
handlers Fixed #25780 -- Removed redundant status code assertions from tests 2015-11-21 18:12:33 +01:00
http_utils Refs #24652 -- Used SimpleTestCase where appropriate. 2015-05-20 13:46:13 -04:00
httpwrappers Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
humanize_tests Moved contrib.humanize tests out of contrib. 2015-02-11 10:19:22 -05:00
i18n Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
import_error_package Refactored tests that rely on an ImportError for Python 3.5 compatibility 2015-02-03 18:30:46 -05:00
indexes Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
inline_formsets Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
inspectdb Fixed #25274 --- Made inspectdb handle renamed fields in unique_together. 2015-11-25 13:07:00 -05:00
introspection Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
invalid_models_tests Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
known_related_objects Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
logging_tests Refs #24526 -- Made the django logger handle INFO messages. 2015-09-23 11:33:49 -04:00
lookup Fixed #25609 -- Fixed regression in related field nested lookup error. 2015-10-27 13:49:00 -04:00
m2m_and_m2o Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
m2m_intermediary Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
m2m_multiple Tweak some examples. 2015-08-22 20:25:42 +02:00
m2m_recursive
m2m_regress Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
m2m_signals Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
m2m_through Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
m2m_through_regress Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
m2o_recursive Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
mail Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
managers_regress Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
many_to_many Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
many_to_one Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
many_to_one_null Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
max_lengths Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
messages_tests Refs #24652 -- Used SimpleTestCase where appropriate. 2015-05-20 13:46:13 -04:00
middleware Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
middleware_exceptions Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
migrate_signals Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
migration_test_data_persistence Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
migrations Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
migrations2 Fixed #24743, #24745 -- Optimized migration plan handling 2015-09-19 14:54:53 +10:00
model_fields Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
model_forms Fixed #25496 -- Made ModelChoiceField respect prefetch_related(). 2015-10-05 18:21:56 -04:00
model_formsets Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
model_formsets_regress Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
model_inheritance Renamed __unicode__() to __str__() in some test comments. 2015-11-19 16:44:16 -05:00
model_inheritance_regress Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
model_meta Refs #18012 -- Made proxy and concrete model reverse fields consistent. 2015-10-12 12:14:27 -04:00
model_options Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
model_package Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
model_permalink Refs #24652 -- Used SimpleTestCase where appropriate. 2015-05-20 13:46:13 -04:00
model_regress Fixed #25745 -- Promoted RuntimeWarnings to errors in the test suite. 2015-11-14 11:33:28 -05:00
model_validation Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
modeladmin Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
multiple_database Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
mutually_referential Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
nested_foreign_keys Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
no_models Refs #24652 -- Used SimpleTestCase where appropriate. 2015-05-20 13:46:13 -04:00
null_fk Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
null_fk_ordering Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
null_queries Fixed #25508 -- Modified QuerySet.__repr__() to disambiguate it from a list. 2015-10-06 12:38:34 -04:00
one_to_one Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
or_lookups Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
order_with_respect_to Refs #25786 -- Added tests/release notes for set_FOO_order() crash with order_with_respect_to referencing OneToOneField pk. 2015-11-23 11:33:13 -05:00
ordering Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
pagination Fixed #23190 -- Made Paginator.page_range an iterator 2015-07-03 11:34:34 -04:00
postgres_tests Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
prefetch_related Refs #25693 -- Added a regression test for `to_attr` validation on forward m2m. 2015-11-11 12:25:10 -05:00
project_template Removed support for Python 3.3. 2015-06-18 08:36:50 -04:00
properties
proxy_model_inheritance Fixed #23076, #25505 -- Fixed deletion of intermediate proxy models. 2015-10-12 12:14:26 -04:00
proxy_models Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
queries Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
queryset_pickle Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
raw_query Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
redirects_tests Moved contrib.redirects tests out of contrib. 2015-02-11 10:19:22 -05:00
requests Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
requirements Fixed #25764 -- Added support for serialization of enum.Enum in migrations. 2015-11-19 17:21:12 -05:00
reserved_names
resolve_url Refs #22384 -- Removed the ability to reverse URLs by dotted path per deprecation timeline. 2015-09-23 19:31:09 -04:00
responses Fixed #25576 -- Added IOBase methods required by TextIOWrapper to HttpResponse. 2015-10-21 10:42:29 -04:00
reverse_lookup Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
save_delete_hooks
schema Refs #25745 -- Avoided multiple registration of the same model in schema tests. 2015-11-14 11:33:28 -05:00
select_for_update Changed database connection duplication technique. 2015-09-09 23:03:51 +02:00
select_related Fixed #24687 -- Added select_related() validation for nested non-relational fields. 2015-10-10 09:48:50 -04:00
select_related_onetoone Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
select_related_regress Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
serializers Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
servers Fixed #25204 -- Added missing space in runserver logging. 2015-08-01 08:01:24 -04:00
sessions_tests Fixed quad quoted ("""") docstring starts. 2015-10-20 12:19:17 -04:00
settings_tests Refs #23957 -- Required session verification per deprecation timeline. 2015-09-23 19:31:10 -04:00
shortcuts Removed support for passing a context to a generic Template.render(). 2015-09-23 19:31:11 -04:00
signals Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
signed_cookies_tests Refs #24652 -- Used SimpleTestCase where appropriate. 2015-05-20 13:46:13 -04:00
signing Refs #22804 -- Made an unsafe value of 'sep' in Signer an exception. 2015-09-23 19:31:11 -04:00
sitemaps_tests Refs #22384 -- Removed the ability to reverse URLs by dotted path per deprecation timeline. 2015-09-23 19:31:09 -04:00
sites_framework Fixed #23395 -- Limited line lengths to 119 characters. 2015-09-12 11:40:50 -04:00
sites_tests Fixed #25692 -- Added natural keys support to Site model. 2015-11-07 21:19:25 +01:00
staticfiles_tests Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
str Fixed #25730 -- Made Model.__str__() always return str instances. 2015-11-11 12:18:52 -05:00
string_lookup Fixed #25508 -- Modified QuerySet.__repr__() to disambiguate it from a list. 2015-10-06 12:38:34 -04:00
swappable_models Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
syndication_tests Refs #13110 -- Fixed mistakes in the new multiple enclosure feed tests 2015-09-19 15:54:33 +02:00
template_backends Fixed #25469 -- Added autoescape option to DjangoTemplates backend. 2015-11-12 19:14:23 -05:00
template_loader Fixed #24119, #24120 -- Formalized debug integration for template backends. 2015-05-06 17:33:47 -05:00
template_tests Fixed #25825 -- Implemented __ne__() for template Origin 2015-12-03 15:59:34 -05:00
templates Cleaned up template loader tests. 2015-02-24 14:00:02 +01:00
test_client Fixed #25780 -- Removed redundant status code assertions from tests 2015-11-21 18:12:33 +01:00
test_client_regress Fixed #25682 -- Removed bare except clauses. 2015-11-17 14:39:15 -05:00
test_discovery_sample
test_discovery_sample2
test_exceptions
test_runner Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
test_runner_deprecation_app
test_utils Fixed #25170 -- Made assertXMLEqual()/assertXMLNotEqual() ignore leading and trailing whitespace. 2015-11-09 15:53:30 -05:00
timezones Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
transaction_hooks Fixed #21803 -- Added support for post-commit callbacks 2015-06-30 14:51:00 -04:00
transactions Fixed #24921 -- set_autocommit(False) + ORM queries. 2015-09-21 22:21:53 +02:00
unmanaged_models Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
update Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
update_only_fields Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set. 2015-10-27 07:57:15 -04:00
urlpatterns_reverse Fixed #25668 -- Misc spelling errors 2015-11-03 11:58:13 +02:00
user_commands Fixed #16734 -- Set script prefix even outside of requests 2015-10-29 20:12:38 +01:00
utils_tests Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
validation Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
validators Fixed #25635 -- Made URLValidator allow '+' in scheme. 2015-10-31 17:50:05 -04:00
version Fixed #25769 -- Updated get_version() release candidate naming for PEP 0440. 2015-11-19 10:00:09 -05:00
view_tests Fixed #25780 -- Removed redundant status code assertions from tests 2015-11-21 18:12:33 +01:00
wsgi Fixed #25331 -- Removed trailing blank lines in docstrings. 2015-08-31 17:37:21 -04:00
.coveragerc Fixed #25209 -- Removed parallel=True coverage option 2015-08-04 09:32:12 -04:00
README.rst
runtests.py Improved help text for runtests's --parallel option 2015-11-27 21:43:02 +01:00
test_sqlite.py Added trailing comma. 2015-02-06 12:58:45 +01:00
urls.py Fixed "URLconf" spelling in code comments. 2015-10-22 14:46:42 -04:00

README.rst

To run the test suite::

    $ cd tests
    $ pip install -r requirements/py3.txt  # or py2.txt
    $ PYTHONPATH=..:$PYTHONPATH ./runtests.py

For more information about the test suite, see
https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/unit-tests/.