django/tests
Alvin Lindstam 47a99d7012 Fixed -- Fixed HttpResponse.delete_cookie() for cookies that use __Secure/Host prefixes. 2018-01-08 12:32:47 -05:00
..
absolute_url_overrides Fixed -- Fixed E731 flake warnings. 2016-01-25 14:23:43 -05:00
admin_autodiscover Sorted imports with isort; refs . 2015-02-06 08:16:28 -05:00
admin_changelist Fixed -- Fixed admin changelist crash when using a query expression in the page's ordering. 2017-12-27 18:38:30 +01:00
admin_checks Fixed -- Fixed a/an/and typos in docs and comments. 2017-11-06 22:41:03 -05:00
admin_custom_urls Refs -- Replaced super(ClassName, self) with super(). 2017-01-25 12:23:46 -05:00
admin_docs Refs -- Used subTest() in several tests. 2017-05-24 08:36:34 -04:00
admin_filters Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
admin_inlines Fixed -- Made InlineAdminFormSet include InlineModelAdmin's Media before its formset's Media. 2017-11-30 20:15:28 -05:00
admin_ordering Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
admin_registration Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
admin_scripts Refs -- Removed obsolete __init__.py files in management command directories. 2018-01-03 11:02:26 -05:00
admin_utils Fixed -- Prevented boolean values in admin list display from being formatted with thousand separators. 2018-01-03 15:02:06 -05:00
admin_views Fixed -- Added ModelAdmin.delete_queryset() to customize "delete selected objects" deletion. 2018-01-05 18:28:45 -05:00
admin_widgets Fixed -- Fixed initialization of autocomplete widgets in "Add another" inlines. 2017-12-01 22:14:32 -05:00
aggregation Fixed -- Added filtering support to aggregates. 2017-08-12 17:58:28 -04:00
aggregation_regress Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
annotations Fixed -- Fixed crash when combining regular and group by annotations. 2018-01-03 08:24:16 -05:00
app_loading Refs -- Removed django.utils._os.upath()/npath()/abspathu() usage. 2017-01-20 08:01:02 -05:00
apps Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
auth_tests Fixed -- Allowed using contrib.auth forms without installing contrib.auth. 2018-01-05 14:47:37 -05:00
backends Fixed -- Made Oracle backend raise DatabaseError if "no data found" exception is hidden by the Oracle OCI library. 2018-01-06 18:50:54 +01:00
base Sorted imports per isort 4.2.9. 2017-06-01 13:23:48 -04:00
bash_completion Refs -- Removed obsolete __init__.py files in management command directories. 2018-01-03 11:02:26 -05:00
basic Fixed -- Made Model.refresh_from_db() clear cached relations. 2017-10-12 17:04:10 -04:00
builtin_server Refs -- Replaced super(ClassName, self) with super(). 2017-01-25 12:23:46 -05:00
bulk_create Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
cache Fixed -- Removed DummyCache's unnecessary get/set/delete_many(). 2017-10-31 12:16:09 -04:00
check_framework Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
choices Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
conditional_processing Fixed -- Prevented condition decorator from setting ETag/Last-Modified headers for non-safe requests. 2017-06-06 15:37:14 -04:00
contenttypes_tests Fixed -- Added model name max length check of 100 characters in contrib.contentttypes. 2017-06-26 18:12:35 -04:00
context_processors Added multi_db=True to test cases that access the 'other' db connection. 2017-02-10 08:19:32 -05:00
csrf_tests Fixed -- Reallowed error handlers to access CSRF tokens. 2017-09-20 16:22:18 -04:00
custom_columns Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
custom_lookups Refs -- Reallowed using __exact=None as an alias for __isnull=True if a custom lookup class with lookup_name != None is registered as the exact lookup. 2017-12-12 17:11:58 -10:00
custom_managers Fixed -- Fixed Model.refresh_from_db() for instances hidden by the default manager. 2017-12-30 18:00:36 -05:00
custom_methods Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
custom_migration_operations Fixed -- Prevented MigrationWriter to write operation kwargs that are not explicitly deconstructed 2015-01-07 17:29:20 -07:00
custom_pk Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
datatypes Refs , -- Removed obsolete mentions of unicode. 2017-01-26 08:19:27 -05:00
dates Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
datetimes Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
db_functions Fixed -- Prevented Cast to FloatField from rounding to integer on MySQL. 2017-12-27 19:16:37 -05:00
db_typecasts Refs -- Used subTest() in several tests. 2017-05-24 08:36:34 -04:00
db_utils Fixed -- Updated connection.cursor() uses to use a context manager. 2017-11-28 11:28:09 -05:00
dbshell Fixed -- Added dbshell support for MySQL client TLS certs. 2017-06-19 18:11:25 -04:00
decorators Fixed spelling of "nonexistent". 2017-02-03 08:01:45 -05:00
defer Fixed -- Fixed QuerySet.defer() with super and subclass fields. 2017-08-31 09:35:05 -04:00
defer_regress Decreased max_length for char fields unless absolutely needed. () 2017-05-10 17:33:46 +02:00
delete Fixed incorrect integer division in DeletionTests.test_large_delete_related. 2017-10-02 10:11:20 -04:00
delete_regress Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
deprecation Refs -- Replaced super(ClassName, self) with super(). 2017-01-25 12:23:46 -05:00
dispatch Refs -- Stopped inheriting from object to define new style classes. 2017-01-19 08:39:46 +01:00
distinct_on_fields Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
empty Fixed -- Used more specific assertions in the Django test suite. 2014-11-03 11:56:37 -05:00
expressions Fixed -- Fixed loss of precision of big DurationField values on SQLite and MySQL. 2017-12-28 17:35:41 -05:00
expressions_case Fixed -- Added an error message when using an empty Q() in a When expression. 2017-12-26 10:39:47 -05:00
expressions_window Fixed -- Added support for window expressions (OVER clause). 2017-09-18 09:42:29 -04:00
extra_regress Refs -- Improved test for extra(), values(), distinct() and ordering() all together. 2017-08-08 14:38:43 -04:00
field_deconstruction Fixed -- Allowed BinaryField to be editable=True. 2017-12-22 16:31:46 -05:00
field_defaults Refs -- Removed six.<various>_types usage 2017-01-18 20:18:46 +01:00
field_subclassing Refs -- Removed encoding preambles and future imports 2017-01-18 09:55:19 +01:00
file_storage Refs -- Removed unnecessary lists, generators, and tuple calls. 2017-06-01 19:08:59 -04:00
file_uploads Fixed -- Removed unnecessary dict.keys() calls. 2017-05-27 19:08:46 -04:00
files Fixed -- Fixed a/an/and typos in docs and comments. 2017-11-06 22:41:03 -05:00
filtered_relation Refs -- Allowed reverse related fields in SELECT FOR UPDATE .. OF. 2017-10-28 20:33:42 -04:00
fixtures Fixed -- Simplified code with and/or. 2018-01-03 20:12:23 -05:00
fixtures_model_package Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
fixtures_regress Fixed spelling of "nonexistent". 2017-02-03 08:01:45 -05:00
flatpages_tests Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
force_insert_update Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
foreign_object Fixed -- Added FilteredRelation API for conditional join (ON clause) support. 2017-09-22 11:53:17 -04:00
forms_tests Fixed -- Fixed cleaning of disabled MultiValueFields. 2018-01-05 15:49:54 -05:00
from_db_value Fixed -- Deprecated the context arg of Field.from_db_value() and Expression.convert_value(). 2017-07-20 16:30:08 -04:00
generic_inline_admin Moved generic_inlineformset_factory() tests to a separate file. 2017-12-28 17:17:47 -05:00
generic_relations Fixed -- Fixed generic inline formsets crash when using save_as_new=True. 2017-12-30 11:38:11 -05:00
generic_relations_regress Refs -- Added test for caching of a GenericForeignKey pointing to a model that uses more than one level of MTI. 2017-12-08 14:06:28 -05:00
generic_views Fixed -- Added a helpful exception if MultipleObjectTemplateResponseMixin doesn't generate any template names. 2017-11-07 18:46:52 -05:00
get_earliest_or_latest Fixed -- Added support for a list of fields in Meta.get_latest_by and QuerySet.earliest()/latest(). 2017-09-05 20:14:54 -04:00
get_object_or_404 Refs -- Replaced super(ClassName, self) with super(). 2017-01-25 12:23:46 -05:00
get_or_create Fixed -- Allowed settable properties in QuerySet.update_or_create()/get_or_create() defaults. 2017-05-27 12:41:38 -04:00
gis_tests Fixed -- Simplified code with and/or. 2018-01-03 20:12:23 -05:00
handlers Fixed -- Dropped support for Python 3.4. 2017-09-25 17:11:03 -04:00
httpwrappers Refs , -- Removed obsolete cookie test mixing bytes with str. 2017-06-03 21:07:11 -04:00
humanize_tests Converted usage of ugettext* functions to their gettext* aliases 2017-02-07 09:04:04 +01:00
i18n Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01: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 Refs -- Tracked references of deferred SQL statements. 2017-06-21 00:03:31 -04:00
inline_formsets Refs -- Replaced super(ClassName, self) with super(). 2017-01-25 12:23:46 -05:00
inspectdb Fixed -- Made assorted code simplifications. 2018-01-03 13:24:02 -05:00
introspection Fixed -- Removed unnecessary dict.items() calls. 2017-12-06 17:17:59 -05:00
invalid_models_tests Fixed -- Added system check for a model property that clashes with a related field accessor. 2018-01-03 10:34:31 -05:00
known_related_objects Refs -- Removed unnecessary lists, generators, and tuple calls. 2017-06-01 19:08:59 -04:00
logging_tests Refs -- Removed default 'utf-8' argument for str.encode()/decode(). 2017-02-09 09:03:47 -05:00
lookup Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
m2m_and_m2o Refs , -- Removed obsolete mentions of unicode. 2017-01-26 08:19:27 -05:00
m2m_intermediary Refs -- Removed six.<various>_types usage 2017-01-18 20:18:46 +01:00
m2m_multiple Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
m2m_recursive Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
m2m_regress Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
m2m_signals Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
m2m_through Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
m2m_through_regress Fixed -- Fixed a/an/and typos in docs and comments. 2017-11-06 22:41:03 -05:00
m2o_recursive Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
mail Fixed -- Made EmailMessage.message() omit an empty To header. 2017-12-30 09:38:03 -05:00
managers_regress Fixed -- Fixed a/an/and typos in docs and comments. 2017-11-06 22:41:03 -05:00
many_to_many Fixed typo in tests/many_to_many/tests.py. 2017-10-31 10:21:02 -04:00
many_to_one Fixed -- Made Model.save() invalidate cached, stale relations after a primary key assignment. 2017-11-09 11:40:34 -05:00
many_to_one_null Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
max_lengths Refs -- Removed encoding preambles and future imports 2017-01-18 09:55:19 +01:00
messages_tests Fixed -- Updated Set-Cookie's Expires date format to follow RFC 7231. 2018-01-02 11:22:59 -05:00
middleware Refs -- Removed the USE_ETAGS setting per deprecation timeline. 2017-09-22 12:51:18 -04:00
middleware_exceptions Imported django.http classes instead of django.http. 2017-02-27 14:47:11 -05:00
migrate_signals Refs -- Stopped inheriting from object to define new style classes. 2017-01-19 08:39:46 +01:00
migration_test_data_persistence Refs -- Removed encoding preambles and future imports 2017-01-18 09:55:19 +01:00
migrations Fixed -- Made RenameField repoint to_field/to_fields references. 2017-12-30 14:59:22 -05:00
migrations2 Refs -- Removed encoding preambles and future imports 2017-01-18 09:55:19 +01:00
model_fields Fixed -- Fixed loss of precision of big DurationField values on SQLite and MySQL. 2017-12-28 17:35:41 -05:00
model_forms Fixed -- Prevented ManyToManyField.value_from_object() from being lazy. 2017-08-31 09:34:44 -04:00
model_formsets Fixed -- Added primary key validation to BaseModelFormSet._construct_form(). 2017-07-11 14:33:21 -04:00
model_formsets_regress Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
model_indexes Refs -- Fixed incorrect class-based model index name generation for models with quoted db_table. 2017-12-05 21:05:10 +01:00
model_inheritance Fixed -- Followed ancestor links on field cache lookup failure. 2017-11-29 01:28:39 -05:00
model_inheritance_regress Fixed -- Fixed update of the inherited id field of an object when its parent changes. 2017-06-26 12:11:20 -04:00
model_meta Fixed -- Allowed models to define Meta.manager_inheritance_from_future for backwards compatibility. 2017-10-31 13:22:27 -04:00
model_options Refs -- Tracked references of deferred SQL statements. 2017-06-21 00:03:31 -04:00
model_package Refs -- Removed encoding preambles and future imports 2017-01-18 09:55:19 +01:00
model_regress Fixed -- Fixed a/an/and typos in docs and comments. 2017-11-06 22:41:03 -05:00
modeladmin Fixed -- Made assorted code simplifications. 2018-01-03 13:24:02 -05:00
multiple_database Fixed -- Simplified code with and/or. 2018-01-03 20:12:23 -05:00
mutually_referential Fixed -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField 2015-07-27 18:28:13 -04:00
nested_foreign_keys Refs -- Removed encoding preambles and future imports 2017-01-18 09:55:19 +01:00
no_models Refs -- Removed "Tests that", "Ensures that", etc. from test docstrings. 2016-11-10 21:30:21 -05:00
null_fk Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
null_fk_ordering Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
null_queries Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
one_to_one Fixed -- Made Model.save() invalidate cached, stale relations after a primary key assignment. 2017-11-09 11:40:34 -05:00
or_lookups Removed obsolete references to add_to_query(). 2017-07-25 07:52:05 -04:00
order_with_respect_to Replaced type-specific assertions with assertEqual(). 2017-03-17 07:51:48 -04:00
ordering Fixed -- Fixed SQLite/MySQL crash when ordering by a filtered subquery that uses nulls_first/nulls_last. 2017-11-27 11:35:44 -05:00
pagination Fixed -- Added Paginator.get_page(). 2017-09-06 14:17:19 -04:00
postgres_tests Fixed -- Allowed ArrayField lookups on ArrayAgg annotations. 2017-12-30 14:46:52 -05:00
prefetch_related Fixed -- Fixed RelatedManager's prefetch_related() cache name. 2017-11-02 10:06:00 -04:00
project_template Fixed -- Fixed test_middleware_classes_headers if Django source isn't writable. 2017-05-31 10:25:09 -04:00
properties Refs -- Removed encoding preambles and future imports 2017-01-18 09:55:19 +01:00
proxy_model_inheritance Refs -- Removed django.utils._os.upath()/npath()/abspathu() usage. 2017-01-20 08:01:02 -05:00
proxy_models Fixed -- Eliminated an extra query with QuerySet.update() on proxy models. 2017-11-21 12:11:47 -05:00
queries Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
queryset_pickle Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
raw_query Fixed -- Fixed RawQuerySet crash on a model with a mixed case db_column pk on Oracle. 2017-05-18 19:11:23 +02:00
redirects_tests Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
requests Moved HttpResponse.set_cookie() tests to an appropriate location. 2018-01-08 12:01:59 -05:00
requirements Fixed -- Restored test dependency to the original python-memcached. 2017-12-18 10:37:43 -10:00
reserved_names Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
resolve_url Refs -- Removed six.<various>_types usage 2017-01-18 20:18:46 +01:00
responses Fixed -- Fixed HttpResponse.delete_cookie() for cookies that use __Secure/Host prefixes. 2018-01-08 12:32:47 -05:00
reverse_lookup Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
save_delete_hooks Refs -- Replaced super(ClassName, self) with super(). 2017-01-25 12:23:46 -05:00
schema Refs -- Simplified schemas test with any(). 2018-01-02 10:11:48 -05:00
select_for_update Fixed -- Fixed crash when chaining values()/values_list() after QuerySet.select_for_update(of=()). 2017-12-26 11:41:17 -05:00
select_related Added a test for QuerySet.select_related() reverse caching. 2017-09-21 14:25:42 -04:00
select_related_onetoone Fixed -- Followed ancestor links on field cache lookup failure. 2017-11-29 01:28:39 -05:00
select_related_regress Refs -- Removed six.<various>_types usage 2017-01-18 20:18:46 +01:00
serializers Fixed -- Made assorted code simplifications. 2018-01-03 13:24:02 -05:00
servers Refs -- Fixed server connection closing test on macOS. 2017-10-13 13:29:29 -04:00
sessions_tests Fixed -- Updated Set-Cookie's Expires date format to follow RFC 7231. 2018-01-02 11:22:59 -05:00
settings_tests Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
shell Refs -- Removed django.test.mock Python 2 compatibility shim. 2017-01-20 08:17:20 -05:00
shortcuts Fixed -- Deprecated shorcuts.render_to_response(). 2017-02-11 05:49:04 -05:00
signals Refs -- Replaced super(ClassName, self) with super(). 2017-01-25 12:23:46 -05:00
signed_cookies_tests Refs -- Removed encoding preambles and future imports 2017-01-18 09:55:19 +01:00
signing Refs -- Removed default 'utf-8' argument for str.encode()/decode(). 2017-02-09 09:03:47 -05:00
sitemaps_tests Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
sites_framework Refs -- Removed python_2_unicode_compatible decorator usage 2017-01-18 13:44:34 +01:00
sites_tests Added tests for RequestSite.__init__() and __str__(). 2017-09-28 08:16:21 -04:00
staticfiles_tests Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
str Fixed -- Added instance's pk to Model.__str__(). 2017-06-09 13:42:53 -04:00
string_lookup Refs -- Removed unneeded force_text calls 2017-03-04 18:18:21 +01:00
swappable_models Refs -- Reverted "Removed available_apps on TestCase subclasses." 2017-01-28 10:01:13 -05:00
syndication_tests Refs -- Used subTest() in a syndication test. 2017-09-03 20:40:50 -04:00
template_backends Fixed spelling of "nonexistent". 2017-02-03 08:01:45 -05:00
template_loader Fixed -- Enabled the cached template loader if debug is False. 2016-09-03 09:06:33 -04:00
template_tests Refs -- Added test for variations of 'inf'/'infinity' as a template variable names. 2017-10-21 20:55:26 -04:00
templates Fixed rendering of form errors in tests/templates/login.html. 2017-07-11 07:53:06 -04:00
test_client Fixed -- Fixed test client crash if an exception with more than one arg is raised. 2017-11-28 18:55:23 -05:00
test_client_regress Decoupled test client encoding tests from JSON handling 2017-03-09 22:15:10 +01:00
test_exceptions Reduced reduce() usage; refs . 2014-11-20 14:31:14 -05:00
test_runner Reorganized test_runner test apps. 2018-01-04 15:41:33 -05:00
test_runner_apps Reorganized test_runner test apps. 2018-01-04 15:41:33 -05:00
test_utils Fixed -- Dropped support for Python 3.4. 2017-09-25 17:11:03 -04:00
timezones Removed DatabaseFeatures.supports_microsecond_precision. 2017-09-25 14:48:15 -04:00
transaction_hooks Reverted "Fixed -- Replaced try/except/pass with contextlib.suppress()." 2017-09-07 08:16:21 -04:00
transactions Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
unmanaged_models Sorted imports per isort 4.2.9. 2017-06-01 13:23:48 -04:00
update Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
update_only_fields Used assertRaisesMessage() to test Django's error messages. 2017-07-29 19:07:23 -04:00
urlpatterns Fixed -- Fixed crash when coercing a translatable URL pattern to str. 2017-12-20 20:36:41 -05:00
urlpatterns_reverse Refs -- Removed support for (iLmsu) regex groups in url() patterns. 2017-09-22 12:51:18 -04:00
user_commands Refs -- Removed obsolete __init__.py files in management command directories. 2018-01-03 11:02:26 -05:00
utils_tests Refs -- Deprecated unused django.utils.http.cookie_date(). 2018-01-02 11:23:04 -05:00
validation Removed unnecessary trailing commas and spaces in various code. 2017-12-28 21:07:29 +01:00
validators Fixed -- Fixed DecimalValidator handling of positive exponent scientific notation. 2017-09-27 09:42:04 -04:00
version Fixed -- Used distutils.version.LooseVersion for version parsing. 2017-06-13 10:53:39 -04:00
view_tests Refs -- Made set_language() view always set the current language in a cookie. 2018-01-03 11:25:40 -05:00
wsgi Refs -- Stopped inheriting from object to define new style classes. 2017-01-19 08:39:46 +01:00
.coveragerc Fixed -- Removed parallel=True coverage option 2015-08-04 09:32:12 -04:00
README.rst Refs -- Removed misc Python 2/3 references. 2017-01-25 13:59:25 -05:00
runtests.py Reorganized test_runner test apps. 2018-01-04 15:41:33 -05: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, first, create and activate a virtual environment. Then
install some requirements and run the tests::

    $ cd tests
    $ pip install -e ..
    $ pip install -r requirements/py3.txt
    $ ./runtests.py

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