django/tests
Sarah Boyce 5fa4ccab7e Refs #26001 -- Handled relationship exact lookups in ModelAdmin.search_fields. 2024-11-05 09:06:14 +01:00
..
absolute_url_overrides
admin_autodiscover
admin_changelist Refs #26001 -- Handled relationship exact lookups in ModelAdmin.search_fields. 2024-11-05 09:06:14 +01:00
admin_checks Fixed #10743 -- Allowed lookups for related fields in ModelAdmin.list_display. 2024-02-05 21:42:04 -03:00
admin_custom_urls Fixed #33028 -- Used ModelAdmin's opts attribute instead of model._meta. 2022-06-22 07:50:24 +02:00
admin_default_site
admin_docs Fixed #35867, Refs #2411 -- Allowed links in admindocs view details summary. 2024-11-04 10:43:06 +01:00
admin_filters Fixed #35198 -- Fixed facet filters crash on querysets with no primary key. 2024-02-29 10:01:18 +01:00
admin_inlines Fixed #35876 -- Displayed non-ASCII fieldset names when rendering ModelAdmin.fieldsets. 2024-10-31 06:38:07 +01:00
admin_ordering Fixed #9602 -- Added AdminSite.get_model_admin(). 2023-07-07 08:06:01 +02:00
admin_registration Refs #9602 -- Moved AlreadyRegistered/NotRegistered exceptions to django.contrib.admin.exceptions. 2023-07-07 13:22:06 +02:00
admin_scripts Refs #35844 -- Expanded compatibility for expected error messages in command tests on Python 3.12 and 3.13. 2024-10-29 22:06:28 +01:00
admin_utils Fixed #35666 -- Documented stacklevel usage and testing, and adjusted test suite accordingly. 2024-08-28 11:44:05 -03:00
admin_views Fixed #35876 -- Displayed non-ASCII fieldset names when rendering ModelAdmin.fieldsets. 2024-10-31 06:38:07 +01:00
admin_widgets Fixed CVE-2024-41991 -- Prevented potential ReDoS in django.utils.html.urlize() and AdminURLFieldWidget. 2024-08-06 08:50:08 +02:00
aggregation Added supports_select_union skips in queries and aggregation tests. 2024-08-26 12:53:08 -03:00
aggregation_regress Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
annotations Fixed #35586 -- Added support for set-returning database functions. 2024-08-12 15:35:19 +02:00
app_loading Used addCleanup() in tests where appropriate. 2023-12-31 10:01:31 +01:00
apps Fixed #34849 -- Avoided raising RuntimeWarning about import-time queries when apps are reinitialized with test tools. 2023-09-25 08:17:03 +02:00
asgi Refs #35059 -- Used asyncio.Event in ASGITest.test_asyncio_cancel_error to enforce specific interleaving. 2024-05-28 14:36:34 -03:00
async Fixed #35303 -- Implemented async auth backends and utils. 2024-10-07 14:19:41 +02:00
auth_tests Refs #35844 -- Used asgiref.sync.iscoroutinefunction() instead of deprecated asyncio.iscoroutinefunction(). 2024-10-17 10:15:10 -03:00
backends Fixed #35688 -- Restored timezone and role setters to be PostgreSQL DatabaseWrapper methods. 2024-08-28 19:25:07 -03:00
base
bash_completion Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
basic Refs #373 -- Added Model._is_pk_set() abstraction to check if a Model's PK is set. 2024-09-09 17:46:50 -03:00
builtin_server Fixed #33865 -- Optimized LimitedStream wrapper. 2023-01-05 19:26:56 +01:00
bulk_create Fixed #34698 -- Made QuerySet.bulk_create() retrieve primary keys when updating conflicts. 2023-07-10 13:17:28 +02:00
cache Fixed #32831 -– Allowed cache tests to be retried via a new "retry" decorator. 2024-09-05 18:25:05 -03:00
check_framework Fixed #35656 -- Added an autodetector attribute to the makemigrations and migrate commands. 2024-10-15 16:39:12 +02:00
conditional_processing Updated documentation and comments for RFC updates. 2022-11-10 13:52:17 +01:00
constraints Fixed #35103 -- Used provided error code and message when fields is set without a condition on UniqueConstraint. 2024-10-10 09:20:37 +02:00
contenttypes_tests Fixed #35666 -- Documented stacklevel usage and testing, and adjusted test suite accordingly. 2024-08-28 11:44:05 -03:00
context_processors Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
csrf_tests Refs #35727 -- Updated response.content.decode calls to use the HttpResponse.text property. 2024-10-16 11:52:22 +02:00
custom_columns Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
custom_lookups Fixed #35413 -- Made unsupported lookup error message more specific. 2024-07-09 09:15:38 +02:00
custom_managers Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
custom_methods Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
custom_migration_operations Fixed #35175 -- Made migraton writer preserve keyword-only arguments. 2024-02-09 09:37:13 +01:00
custom_pk Removed unnecessary trailing commas in tests. 2023-08-22 12:42:57 +02:00
datatypes Refs #32365 -- Removed internal uses of utils.timezone.utc alias. 2022-03-24 06:29:50 +01:00
dates Replaced assertQuerysetEqual() to assertSequenceEqual()/assertCountEqual() where appropriate. 2022-10-07 13:05:35 +02:00
datetimes Refs #32365 -- Removed support for pytz timezones per deprecation timeline. 2023-01-17 11:49:15 +01:00
db_functions Fixed #33037 -- Fixed Trunc() with offset timezones on MySQL, SQLite, Oracle. 2024-02-15 10:02:57 +01:00
db_typecasts
db_utils Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
dbshell Simplified using DATABASES["OPTIONS"]. 2024-02-23 07:49:43 +01:00
decorators Fixed #35083 -- Updated method_decorator to handle async methods. 2024-08-30 08:54:49 -03:00
defer Fixed #35044 -- Avoided clearing reverse relations and private fields when accessing deferred fields. 2024-03-08 11:09:54 +01:00
defer_regress Fixed #35356 -- Deferred self-referential foreign key fields adequately. 2024-04-23 13:17:17 -03:00
delete Fixed random delete.tests.DeletionTests.test_deletion_order failures. 2022-12-30 12:22:30 +01:00
delete_regress Fixed #35073 -- Avoided unnecessary calling of callables used by SET/SET_DEFAULT in Collector.collect(). 2024-02-08 18:41:32 +01:00
deprecation Fixed #35303 -- Implemented async auth backends and utils. 2024-10-07 14:19:41 +02:00
dispatch Refs #34986 -- Moved garbage_collect() helper to django.test.utils. 2023-12-06 09:26:11 +01:00
distinct_on_fields Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
empty
empty_models
expressions Refs #373, Refs #24121 -- Added ColPairs.__repr__(). 2024-09-17 14:25:58 +02:00
expressions_case Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
expressions_window Fixed #35665 -- Fixed a crash when passing an empty order_by to Window. 2024-08-13 11:26:17 +02:00
extra_regress Fixed #30382 -- Allowed specifying parent classes in force_insert of Model.save(). 2023-06-29 21:52:52 +02:00
field_deconstruction Fixed #31262 -- Added support for mappings on model fields and ChoiceField's choices. 2023-08-30 22:57:40 -03:00
field_defaults Fixed #35223 -- Made Model.full_clean() ignore fields with db_default when validating empty values. 2024-03-08 05:55:25 +01:00
field_subclassing
file_storage Refs #35326 -- Adjusted deprecation warning stacklevel in FileSystemStorage.OS_OPEN_FLAGS. 2024-08-28 11:44:05 -03:00
file_uploads Fixed CVE-2024-39330 -- Added extra file name validation in Storage's save method. 2024-07-09 09:21:19 -03:00
files Fixed #35323 -- Prevented file_move_safe() from trying to overwrite existing file when allow_overwrite is False. 2024-03-24 16:05:36 +01:00
filtered_relation Fixed #35135 -- Made FilteredRelation raise ValueError on querysets as rhs. 2024-01-29 20:29:49 +01:00
fixtures Fixed #35159 -- Fixed dumpdata crash when base querysets use prefetch_related(). 2024-01-31 16:10:05 +01:00
fixtures_model_package Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
fixtures_regress Refs #29522 -- Fixed serializers/fixtures test crash if PyYAML isn't installed. 2024-09-19 08:51:30 +02:00
flatpages_tests
force_insert_update Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
foreign_object Refs #373 -- Added TupleIn subqueries. 2024-11-04 09:20:54 +01:00
forms_tests Fixed #35666 -- Documented stacklevel usage and testing, and adjusted test suite accordingly. 2024-08-28 11:44:05 -03:00
from_db_value
generic_inline_admin Removed unnecessary trailing commas in tests. 2023-08-22 12:42:57 +02:00
generic_relations Fixed #33651 -- Added support for prefetching GenericForeignKey. 2023-09-18 13:23:21 +02:00
generic_relations_regress Fixed #34816 -- Fixed GenericForeignKey crash when checking cache for primary keys with different types. 2023-09-08 08:47:11 +02:00
generic_views Corrected cache_page()'s timeout value in tests.generic_views.urls. 2024-02-05 13:27:51 +01:00
get_earliest_or_latest Fixed #33772 -- Added QuerySet.first()/last() error message on unordered queryset with aggregation. 2022-06-14 12:24:43 +02:00
get_object_or_404
get_or_create Removed obsolete test_get_or_create_raises_IntegrityError_plus_traceback() test. 2024-02-21 11:50:22 +01:00
gis_tests Fixed #35883 -- Confirmed support for GDAL 3.9. 2024-11-04 09:24:17 +01:00
handlers Refs #33735 -- Adjusted warning stacklevel in StreamingHttpResponse.__iter__()/__aiter__(). 2024-08-28 11:44:05 -03:00
httpwrappers Refs #35727 -- Updated response.content.decode calls to use the HttpResponse.text property. 2024-10-16 11:52:22 +02:00
humanize_tests Fixed #35443 -- Changed ordinal to return negative numbers unchanged. 2024-05-27 10:54:25 +02:00
i18n Fixed #34221 -- Honored translation precedence with mixed plural forms. 2024-09-16 11:04:09 +02:00
import_error_package
indexes Fixed #35469 -- Removed deferred SQL to create index removed by AlterField operation. 2024-05-28 12:44:07 +02:00
inline_formsets
inspectdb Fixed #33143 -- Raised RuntimeWarning when performing import-time queries. 2023-08-21 13:44:25 +02:00
introspection Refs #35234 -- Deprecated CheckConstraint.check in favor of .condition. 2024-03-01 07:15:32 +01:00
invalid_models_tests Fixed #35580 -- Allowed related fields referencing auto-created through models. 2024-07-09 13:50:12 +02:00
known_related_objects Fixed #34227 -- Fixed QuerySet.select_related() with multi-level FilteredRelation. 2023-01-24 10:20:27 +01:00
logging_tests Fixed #35537 -- Changed EmailMessage.attachments and EmailMultiAlternatives.alternatives to use namedtuples. 2024-06-20 09:43:40 +02:00
lookup Fixed #35752 -- Fixed crash when using In() lookup in filters. 2024-09-11 12:42:17 +02:00
m2m_and_m2o Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
m2m_intermediary Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
m2m_multiple Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
m2m_recursive Relaxed some query ordering assertions in various tests. 2022-04-14 12:12:13 +02:00
m2m_regress Fixed #33984 -- Reverted "Fixed #32980 -- Made models cache related managers." 2022-09-30 18:18:33 +02:00
m2m_signals
m2m_through Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
m2m_through_regress
m2o_recursive
mail Refs #35581 -- Reduced boilerplate in mail tests. 2024-10-29 11:13:27 +01:00
managers_regress
many_to_many Fixed #35666 -- Documented stacklevel usage and testing, and adjusted test suite accordingly. 2024-08-28 11:44:05 -03:00
many_to_one Fixed #35666 -- Documented stacklevel usage and testing, and adjusted test suite accordingly. 2024-08-28 11:44:05 -03:00
many_to_one_null
max_lengths
messages_tests Fixed #35622 -- Made unittest ignore Django assertions in traceback frames. 2024-08-08 21:34:01 -03:00
middleware Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
middleware_exceptions Refs #33476 -- Applied Black's 2023 stable style. 2023-02-01 11:04:38 +01:00
migrate_signals Refs #33476 -- Applied Black's 2023 stable style. 2023-02-01 11:04:38 +01:00
migration_test_data_persistence Fixed #35660 -- Made serialized_rollback and fixture data available in TransactionTestCase.setUpClass(). 2024-09-17 09:53:46 +02:00
migrations Fixed #35656 -- Added an autodetector attribute to the makemigrations and migrate commands. 2024-10-15 16:39:12 +02:00
migrations2 Fixed #35122 -- Made migrate --prune option respect --app_label. 2024-02-13 14:47:49 +01:00
model_enums Fixed #35666 -- Documented stacklevel usage and testing, and adjusted test suite accordingly. 2024-08-28 11:44:05 -03:00
model_fields Fixed #35766 -- Handled slices in BaseChoiceIterator. 2024-09-18 16:45:53 +02:00
model_forms Cleaned up temporary test directories in tests. 2024-07-22 08:51:01 +02:00
model_formsets Fixed #35488 -- Fixed BaseModelFormSet.validate_unique() crash due to unhashable type. 2024-06-13 16:21:53 +02:00
model_formsets_regress Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
model_indexes Fixed #33773 -- Made Index with multiple fields respect DEFAULT_INDEX_TABLESPACE. 2022-06-13 07:21:46 +02:00
model_inheritance Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
model_inheritance_regress Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
model_meta Fixed #35407 -- Cached model's Options.swapped. 2024-05-07 14:25:51 +02:00
model_options Refs #27236 -- Reverted AlterIndexTogether deprecation. 2022-07-26 11:41:19 +02:00
model_package
model_regress Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
model_utils
modeladmin Fixed #35666 -- Documented stacklevel usage and testing, and adjusted test suite accordingly. 2024-08-28 11:44:05 -03:00
multiple_database Fixed #16281 -- Fixed ContentType.get_object_for_this_type() in a multiple database setup. 2024-02-05 08:25:23 +01:00
mutually_referential
nested_foreign_keys
no_models
null_fk Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
null_fk_ordering Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
null_queries
one_to_one Fixed #35666 -- Documented stacklevel usage and testing, and adjusted test suite accordingly. 2024-08-28 11:44:05 -03:00
or_lookups Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual(). 2022-10-08 08:07:38 +02:00
order_with_respect_to Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
ordering Fixed #34372 -- Fixed queryset crash on order by aggregation using OrderBy. 2023-02-27 07:10:19 +01:00
pagination Improved style of n-tuple wording in docs and comments. 2023-06-23 09:29:35 +02:00
postgres_tests Fixed #35717 -- Reduced Create/RemoveCollation operations when optimizing migrations. 2024-10-10 13:18:46 +02:00
prefetch_related Fixed #35666 -- Documented stacklevel usage and testing, and adjusted test suite accordingly. 2024-08-28 11:44:05 -03:00
project_template
properties
proxy_model_inheritance
proxy_models Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
queries Fixed #35856 -- Added QuerySet.explain() support for MEMORY/SERIALIZE option on PostgreSQL 17+. 2024-10-30 15:54:48 +01:00
queryset_pickle
raw_query Fixed typos in docstrings and docs. 2024-03-07 06:01:01 +01:00
redirects_tests
requests_tests Fixed #35631 -- Added HttpRequest.get_preferred_type(). 2024-09-09 12:02:18 +02:00
requirements Refs #35844 -- Added Python 3.14 to daily builds. 2024-10-16 22:19:17 -03:00
reserved_names
resolve_url
responses Added tests for HttpResponseBase.charset/reason_phrase setters. 2023-06-10 20:43:05 +02:00
reverse_lookup
save_delete_hooks Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
schema Fixed #35180 -- Recreated PostgreSQL _like indexes when changing between TextField and CharField field types. 2024-10-31 06:37:14 +01:00
select_for_update Refs #33476 -- Applied Black's 2023 stable style. 2023-02-01 11:04:38 +01:00
select_related
select_related_onetoone Fixed #34612 -- Fixed QuerySet.only() crash on reverse relationships. 2023-06-01 19:50:47 +01:00
select_related_regress
serializers Refs #35727 -- Updated response.content.decode calls to use the HttpResponse.text property. 2024-10-16 11:52:22 +02:00
servers Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
sessions_tests Fixed #34901 -- Added async-compatible interface to session engines. 2024-03-13 17:55:15 +01:00
settings_tests Used addCleanup() in tests where appropriate. 2023-12-31 10:01:31 +01:00
shell Fixed #35517, Refs #35515 -- Improved test coverage of shell command. 2024-06-27 16:42:55 +02:00
shortcuts
signals Fixed #35174 -- Fixed Signal.asend()/asend_robust() crash when all receivers are asynchronous. 2024-02-08 11:36:28 +01:00
signed_cookies_tests Fixed #33562 -- Made HttpResponse.set_cookie() support timedelta for the max_age argument. 2022-03-07 07:57:14 +01:00
signing Refs #33199 -- Removed support for passing positional arguments to Signer/TimestampSigner. 2023-09-18 22:12:40 +02:00
sitemaps_tests Refs #35727 -- Updated response.content.decode calls to use the HttpResponse.text property. 2024-10-16 11:52:22 +02:00
sites_framework Refs #33476 -- Applied Black's 2023 stable style. 2023-02-01 11:04:38 +01:00
sites_tests Used addCleanup() in tests where appropriate. 2023-12-31 10:01:31 +01:00
sphinx Fixed #29942 -- Restored source file linking in docs by using the Sphinx linkcode ext. 2024-05-14 22:08:29 -03:00
staticfiles_tests Fixed #35669 -- Improved max post-process passes exceeded error message in HashedFilesMixin. 2024-08-30 10:00:51 +02:00
str
string_lookup
swappable_models Refs #33476 -- Applied Black's 2023 stable style. 2023-02-01 11:04:38 +01:00
syndication_tests Fixed #12978 -- Added support for RSS feed stylesheets. 2024-06-18 17:25:43 +02:00
template_backends Fixed #35837 -- Added missing alters_data=True to QuerySet and UserManager methods. 2024-11-01 11:43:49 +01:00
template_loader
template_tests Fixed #35789 -- Improved the error message raised when the tag must be first in the template. 2024-10-10 12:21:02 +02:00
templates
test_client Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
test_client_regress Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
test_exceptions
test_runner Refs #35844 -- Fixed tests for test --parallel option on Python 3.14+. 2024-10-24 11:41:37 -03:00
test_runner_apps
test_utils Fixed #35660 -- Made serialized_rollback and fixture data available in TransactionTestCase.setUpClass(). 2024-09-17 09:53:46 +02:00
timezones Fixed #34921 -- Fixed crash of warning for unbound naive datetimes. 2023-10-22 14:26:38 +02:00
transaction_hooks Fixed #33616 -- Allowed registering callbacks that can fail in transaction.on_commit(). 2022-09-06 12:21:36 +02:00
transactions Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01:00
unmanaged_models Refs #33476 -- Applied Black's 2023 stable style. 2023-02-01 11:04:38 +01:00
update Fixed #34421 -- Fixed QuerySet.update() on querysets in descending order by annotations. 2023-03-18 13:19:40 +01:00
update_only_fields Refs #35060 -- Adjusted deprecation warning stacklevel in Model.save()/asave(). 2024-08-28 11:44:05 -03:00
urlpatterns Fixed #35666 -- Documented stacklevel usage and testing, and adjusted test suite accordingly. 2024-08-28 11:44:05 -03:00
urlpatterns_reverse Fixed #28999 -- Documented how to reverse a class-based view by instance. 2024-10-23 15:37:54 +02:00
user_commands Refs #35844 -- Expanded compatibility for expected error messages in command tests on Python 3.12 and 3.13. 2024-10-29 22:06:28 +01:00
utils_tests Fixed CVE-2024-45230 -- Mitigated potential DoS in urlize and urlizetrunc template filters. 2024-09-03 09:22:32 -03:00
validation Fixed #35638 -- Updated validate_constraints to consider db_default. 2024-08-05 17:33:12 +02:00
validators Fixed #35845 -- Updated DomainNameValidator to require entire string to be a valid domain name. 2024-10-17 16:45:44 +02:00
version
view_tests Refs #35727 -- Updated response.content.decode calls to use the HttpResponse.text property. 2024-10-16 11:52:22 +02:00
wsgi Used addCleanup() in tests where appropriate. 2023-12-31 10:01:31 +01:00
xor_lookups Fixed #34604 -- Corrected fallback SQL for n-ary logical XOR. 2023-06-08 20:41:18 +02:00
.coveragerc Fixed #34810 -- Measured test coverage on django-admin commands. 2023-09-07 15:47:26 -03:00
README.rst
runtests.py Fixed #35797 -- Removed debug context processor from default project template. 2024-09-30 16:52:28 -03:00
sitecustomize.py Fixed #34810 -- Measured test coverage on django-admin commands. 2023-09-07 15:47:26 -03:00
test_sqlite.py
urls.py Applied Black's 2024 stable style. 2024-01-26 12:45:07 +01: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
    $ python -m pip install -e ..
    $ python -m 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/.